Бесплатные консультации по MODx Evolution и Revolution

S
На сайте с 30.09.2016
Offline
469
#441

Margo239, почитайте вот здесь. Похожий случай.

Отпилю лишнее, прикручу нужное, выправлю кривое. Вытравлю вредителей.
I3
На сайте с 20.07.2012
Offline
117
#442
Margo239:
Хостер меня мягко послал, писала два раза - первый раз было ощущение, что даже не вник в проблему, ответил в духе "xml-карта отдается по https, все ок". Во второй раз я попыталась сформулировать проблему более детально, дала ссылки о которых мы говорили, но тут они меня вообще послали к разработчику сайта. И это очень печальное для меня обстоятельство, т.к. разработчик тоже меня послал.
Я пока размышляю, куда мне копать дальше.
1. Если снипет, формирующий динамическую xml-карту берет эту переменную с https - может, мне попытаться найти специалиста, который сможет переделать сам сниппет? В случае с MODX, это же бесплатный движок, снипеты пишуться, как я понимаю, на добровольных началах, жаловаться не кому :)
2. Может в .htaccess прописать эту переменную, а сниппет не трогать...

Уфф

Используйте компоненты pdoTools (https://docs.modx.pro/components/pdotools/) - проблем с переездом на https у меня не было.

сам использую эти компоненты, разработчик постоянно обновления выпускает.

Margo239
На сайте с 03.04.2014
Offline
45
#443
Sitealert:
Margo239, почитайте вот здесь. Похожий случай.

Да, спасибо! Уже наизусть знаю все, что написано в этой ветке :).

Там, как я поняла, хостер не отказался взаимодействовать с чуваком, я получила ответ:

"Здравствуйте!

В дополнение к предыдущему ответу.

Убрать связку "Nginx + Apache" нельзя. Также в рамках виртуального хостинга, мы не планируем вносить указанные Вами изменения в настройки сервера "Nginx".

Необходимо обратиться к разработчику сайта для исправления кода обсуждаемого скрипта.

"

S
На сайте с 30.09.2016
Offline
469
#444

Да нет, там вроде как и без хостера в конце концов обошлись.

Margo239
На сайте с 03.04.2014
Offline
45
#445
Sitealert:
Да нет, там вроде как и без хостера в конце концов обошлись.

Если честно, мне сложно ориентироваться в написанном тексте, мне бы подробнее что-куда.

1. В .htaccess поместить это: $_SERVER['HTTPS']? В какое место? Или не важно? (впрочем, по написанию инструкций для .htaccess у меня есть специалист, который мне делал писал склейку http c https, инструкция предложенная хостером не подошла тогда)

2. Самое страшное

SetEnvIf X_FORWARDED_PROTO https HTTPS=on

эту строку нужно поменять в config.inc.php? Какую убрать/редактировать строку?

Сам config.inc.php вижу через админку сайта в /manager/includes/config.inc.php, открываю для просмотра (редактирование не предусмотрено). Вижу, касательно url такой кусок:

________________________________________________

// assign site_url

$site_url= ((isset ($_SERVER['HTTPS']) && strtolower($_SERVER['HTTPS']) == 'on') || $_SERVER['SERVER_PORT'] == $https_port) ? 'https://' : 'http://';

$site_url .= $site_hostname;

if ($_SERVER['SERVER_PORT'] != 80)

$site_url= str_replace(':' . $_SERVER['SERVER_PORT'], '', $site_url); // remove port from HTTP_HOST *

$site_url .= ($_SERVER['SERVER_PORT'] == 80 || (isset ($_SERVER['HTTPS']) && strtolower($_SERVER['HTTPS']) == 'on') || $_SERVER['SERVER_PORT'] == $https_port) ? '' : ':' . $_SERVER['SERVER_PORT'];

$site_url .= $base_url;

if (!defined('MODX_BASE_PATH')) define('MODX_BASE_PATH', $base_path);

if (!defined('MODX_BASE_URL')) define('MODX_BASE_URL', $base_url);

if (!defined('MODX_SITE_URL')) define('MODX_SITE_URL', $site_url);

if (!defined('MODX_MANAGER_PATH')) define('MODX_MANAGER_PATH', $base_path.MGR_DIR.'/');

if (!defined('MODX_MANAGER_URL')) define('MODX_MANAGER_URL', $site_url.MGR_DIR.'/');

_______________________________

Что с ним не так?

Aisamiery
На сайте с 12.04.2015
Offline
312
#446
Margo239:

1. Если снипет, формирующий динамическую xml-карту берет эту переменную с https - может, мне попытаться найти специалиста, который сможет переделать сам сниппет? В случае с MODX, это же бесплатный движок, снипеты пишуться, как я понимаю, на добровольных началах, жаловаться не кому :)

Действительно, что то я не подумал. Помните строчку что я давал? Замети её на:

$url = 'https://domainname.ru' . '[~'.$doc['id'].'~]';

Посмотрите карту сайта, возможно после .ru понадобится поставить слеш.

---------- Добавлено 18.01.2017 в 15:59 ----------

Так же можно заменить

Margo239:

// assign site_url
$site_url= ((isset ($_SERVER['HTTPS']) && strtolower($_SERVER['HTTPS']) == 'on') || $_SERVER['SERVER_PORT'] == $https_port) ? 'https://' : 'http://';

просто на


$site_url = 'https://';
Разработка проектов на Symfony, Laravel, 1C-Bitrix, UMI.CMS, OctoberCMS
Margo239
На сайте с 03.04.2014
Offline
45
#447
Aisamiery:
Действительно, что то я не подумал. Помните строчку что я давал? Замети её на:
$url = 'https://domainname.ru' . '[~'.$doc['id'].'~]';


Посмотрите карту сайта, возможно после .ru понадобится поставить слеш.

---------- Добавлено 18.01.2017 в 15:59 ----------



Так же можно заменить



просто на

$site_url = 'https://';

Вы Гений и Мой Герой! Я плохо понимаю, что происходит внутри сниппета, но эта строка встречалась там 2 раза + внутри конструкции else стояло [(site_url)], тоже заменила на 'https://www.site.ru/'. Основное зеркало у меня с www, слэш после ru добавила сразу.

И ВСЕ ЗАРАБОТАЛО! Ура! Без хостера и злоеб...го разработчика.

Огромное спасибо! +1000 вам в карму! И ТОПов, если вам оно, конечно, необходимо :)

foreach ($docs as $doc)

{

$url = 'https://www.site.ru/' . '[~'.$doc['id'].'~]';

$output .= $url."\n";

} // end foreach

foreach ($docs as $doc) {

if ($doc['id']!=$mainpage){

$url = 'https://www.site.ru/' . '[~'.$doc['id'].'~]';

} else {

$url = 'https://www.site.ru/';

}

M5
На сайте с 12.08.2009
Offline
221
M25
#448

Ребят, подскажите, полдня парюсь(

Есть TV типа «список» со следующим содержимым:

Samsung==1||LG==2||Philips==3
способ вывода: по умолчанию.

Проблема: выводит не название, а номер.

К примеру, выбираю LG, на странице отображается «2». Как сделать так, чтобы отображалось название?

REVO

► Рейтинг серверов — ТОП10 ◄
Russ1an
На сайте с 25.03.2015
Offline
84
#449
M25:
Ребят, подскажите, полдня парюсь(
Есть TV типа «список» со следующим содержимым:
Samsung==1||LG==2||Philips==3
способ вывода: по умолчанию.
Проблема: выводит не название, а номер.
К примеру, выбираю LG, на странице отображается «2». Как сделать так, чтобы отображалось название?
REVO

Все правильно выводит. Укажите тогда samsung==samsung

M5
На сайте с 12.08.2009
Offline
221
M25
#450
Russ1an:
Все правильно выводит. Укажите тогда samsung==samsung

увы, слишком подвязано там к этими ID в базах

неужели в MODX настолько тяжело вытащить название этого значения?

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий