Перевод modx revo на https

Настройка HTTPS соединения в MODX Revolution

Не так давно начал переводить сайты, в том числе и на MODX Revolution, на работу с HTTPS протоколом. Сейчас, с моей точки зрения, самое время. Надо было сразу написать инструкцию по переводу сайтов на HTTPS протокол, но подобных постов и так много, поэтому решил не плодить контент. Пока руки не дошли до перевода на HTTPS сайтов на sweb.

Думаю, стоит начать с самой процедуры перевода сайтов на защищенное соединение, после чего коснусь тех проблем, с которыми столкнулся на sweb. Сначала нам надо получить сертификаты, я их генерирую через zerossl.com, который в свою очередь генерирует их через Let’s Encrypt. У данного способа нет никаких особых преимуществ, единственное все можно сделать онлайн. Получив сертификаты привязываем к нужному нам домену, в случае с sweb это делается через загрузку сертификатов в административную панель хостинга во вкладке SSL.

Дальше для перевода самого MODX Revolution на защищенное HTTPS соединение необходимо включить две системные настройки: В разделе System and Server (Система и Сервер) параметру server_protocol необходимо задать значение https, тем самым мы сообщим системе управления, что мы хотим использовать HTTPS в качестве основного протокола на сервере. В разделе Site (Сайт) параметру link_tag_scheme необходимо присвоить значение 1, вместо значения -1, тем самым мы указываем MODX, что все ссылки необходимо генерировать с указанием схемы https (то есть использовать https:// в начале формы записи URL). После этого достаточно вручную очистить файловый кеш и наш сайт на MODX Revolution начнет корректно обрабатывать https:// обращения.

Но для sweb хостинга это оказалось не совсем так. На нем MODX категорически отказывался определять HTTPS подключение. Причина оказалась в том, что для определения защищенного подключения MODX использует серверную переменную $_SERVER[‘HTTPS’] (кому интересно, процедура проверки находится в файле config.php). Однако в случае с sweb данная переменная сервера отсутствовала как класс и вместо нее присутствовала переменная $_SERVER[‘HTTP_HTTPS’]. Как я понял, это связано с некоторыми особенностями настройки связки Apache+nginx, но проверить не смог, так как хостинг шаред. В общем решение данной проблемы в итоге нашлось, через объявление переменной HTTPS в .htaccess, при условии, что она может быть инициализирована. Данное решение подходит нам идеально, так как не надо менять код самой CMS.

Итак, вначале .htaccess нам необходимо добавить:

Все, после этого мы получаем работающее HTTPS соединение на хостинге компании sweb.

UPDATE: если вы столкнулись с проблемой, что в .htaccess не работает дефолтная конструкция, которая переводит все подключения к серверу на защищенное соединение:

Источник

Перевести сайт на HTTPS

MODx Revo — подключили SSL сертификат, стал доступен протокол HTTPS, но как перевести сам MODx на HTTPS !?

Проблема в том, что
упорно отдает http а не httpS — где изменить, что исправить, что бы !?
В настройках:
server_protocol — https
ink_tag_scheme — c «-1» на просто «1»

если в шаблоне руками прописать
вместо
то не подгружается не один скрипт, с CSS все ок, но JS е один не подгружается

Ребятки прошу помощи, всю голову уже сломал

Комментарии: 89

В настройках изменил параметр server_protocol c http на https — обновил кеш, все равно отдает

У меня в .htaccess прописано так

— вообще не пользуюсь, так как схему чпу обычно ставлю abs + ко всему этому вместо у меня rel=«canonical»

И все нормально работает)

Тогда уж так, а то циклическая переадресация будет:

Капитана я безусловно уважаю, но если у тебя прописано

и к примеру тот же Wayfinder главную отдает как
то тут как быть?

Я дико извиняюсь, в каком месте? Можно номер строки или кусок кода?

Просмотрел файл core/config/config.inc.php, но не увидел, где изменить параметры!?

В файле .htaccess нужно вот такую запись добавить:

Нужно ставить перед тэгами

Была подобная ерунда. Решалась обновлением версии Advanced с открытым сайтом с https протоколом.

Вот .htaccess с рабочего проекта. Смотрите как у вас.

Проблема заключается в том, что бы не перенаправить на https что мы сейчас пытаемся путем манипуляций в файле .htaccess

а что бы MODx отдавал httpS

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

Пока поставил костыль, в виде перенаправления и все, но

Аяксы перестали подгружаться, нужно разбираться!

Отпишу хостеру, может он что путного скажет

вместо [[++site_url]] жёстко задай адрес с https, тоесть так

Ну я так и сделал, ибо не чего не остается! Но так же быть не должно? Костыли еще ни когда не к чему хорошему не приводили.

Завтра что ни будь понадобится добавить? В общем с костылями будет все сложнее и сложнее поддерживать проект.

Нужно проблему решить!

Расскажите, пожалуйста, для тех «кто в танке» как проинсталировать с https протоколом?
У меня проблема следующая. Все ссылки на сайте открываются как https, но при переходе из поисковиков (в которых все ссылки идут на станицы с http) страницы и открываются как http и переадресация в .htaccess не срабатывает. Кроме того не могу открыть (ошибка 500) для редактирования «ресурсы», в тоже время «элементы» и «файлы» доступны и редактируемы.

Победил все!
в .htaccess вот такая конструкция заработала:
RewriteEngine On
RewriteBase /
RewriteCond % !^$
RewriteRule .* — [L]

А админке не давала работать старая версия TinyMCE, с 4.3.4 все заработало!

Источник

Настройка сайта для работы по HTTPS

Настройка сайта для работы по HTTPS

Если для работы с сайтом должен использоваться протокол HTTPS, после установки сертификата производится настройка защищенного соединения для всех элементов и страниц сайта.

В первую очередь осуществляется переадресация сайта на защищенный протокол HTTPS. Переадресация с протокола HTTP на протокол HTTPS реализуется добавлением в файл .htaccess следующих директив:

Также производится проверка всех ссылок на сайте на предмет явного использования протокола HTTP. При наличии элементов, открывающихся по небезопасному протоколу, соединение будет считаться недоверенным, и информация об этом отобразится в адресной строке.

Проверить страницы сайта можно с помощью следующего сервиса.

При наличии элементов, доступных только по протоколу HTTP, ссылки на них меняются на относительные (к примеру, вместо http://yourdomain.com/content/pic.jpg в коде страницы ссылка должна иметь вид /content/pic.jpg ), либо явно указывается использование протокола HTTPS (в таком случае ссылка будет иметь вид https://yourdomain.com/content/pic.jpg «).

Также меняются ссылки для элементов, загружаемых с внешних ресурсов. Например, если на сайте используется скрипт, доступный по адресу http://externaldomain.us/scripts/ad.js , эта ссылка должна быть изменена на //externaldomain.us/scripts/ad.js или https://externaldomain.us/scripts/ad.js . Обратите внимание, что сайт, на котором расположен элемент, также должен иметь валидный SSL-сертификат.

Настройка известных CMS для работы по HTTPS

Помимо ссылок, которые явным образом указываются в коде страницы, существуют особенности при переводе различных CMS на защищенный протокол.

Joomla!

В конфигурационном файле (configuration.php) строка public $live_site =»»; заменяется на следующую public $live_site = ‘https://www.yourdomain.com’; где «yourdomain.com» — имя домена. Также вместо строки public $force_ssl = ‘0’; используется: public $force_ssl = ‘2’; .

В Joomla! версии 3.x. перевод сайта на протокол HTTPS может быть осуществлён автоматически в административной панели сайта в разделе Система -> Общие настройки. На вкладке Сервер в поле «Включить SSL» устанавливается значение «Весь сайт«.

В Joomla! 3.x. Русская версия для проверки работы сайта по протоколу HTTPS до указания в файле /public_html/.htaccess рекомендуемых в данной статье директив, можно внести изменения в файл /public_html/libraries/joomla/uri/uri.php, заменив строку if (isset($_SERVER[‘HTTPS’]) && !empty($_SERVER[‘HTTPS’]) && (strtolower($_SERVER[‘HTTPS’])!= ‘off’)) на if (isset($_SERVER[‘HTTP_X_FORWARDED_PROTO’]) && $_SERVER[‘HTTP_X_FORWARDED_PROTO’] == ‘https’) .

Обращаем внимание, что указанные действия производятся уже после установки сертификата на домен, иначе они могут привести к неработоспособности сайта.

WordPress

В административной панели WordPress производится смена протокола в адресе сайта. Для этого в разделе «Настройки» > «Общие«, в полях «Адрес WordPress» и «Адрес сайта» протокол «http» меняется на «https».

Для быстрой и удобной настройки SSL можно воспользоваться специальным плагином Really Simple SSL Стоит заметить, что для безопасности сайта все установленные компоненты и плагины необходимо своевременно обновлять.

Bitrix

Работа сайта включается в административной панели сайта с использованием безопасного соединения. Сделать это можно следующим образом: Настройки > Управление масштабированием > Панель управления > Глобальные действия > Включить https.
В новых версиях Bitrix этого не требуется. Достаточно установить редирект на https, прописав директивы в файл .htacсess.

Drupal

В конфигурационном файле (/sites/default/settings.php) добавляется следующая директива $conf[‘https’] = TRUE; Также, для удобства настройки безопасного доступа к авторизованным разделам сайта рекомендуем установить модули «Auth SSL Redirect» и «Secure Login«.

Для расширенной настройки доступа к сайту по защищенному протоколу рекомендуем установить модуль «SSL 1.0.0-ga«, доступный по следующей ссылке. При использовании MODX Revolution для настройки работы сайта по https вносятся следующие изменения в конфигурационный файл core/config/config.inc.php:

После внесения изменений очищается кэш MODX.

Как указать поисковым системам, что сайт является защищенным

Компания Google рассматривает использование HTTPS на сайте в качестве фактора ранжирования. Для корректного индексирования сайта по протоколу HTTPS компания Google рекомендует соблюдать следующие правила:

Используйте относительные URL для ресурсов, которые находятся на одном защищенном домене.
Например, для перехода на страницу на вашем сайте example.com, использовать a href=»/about/ourCompany.php» предпочтительнее, чем a href=»https://example.com/about/ourCompany.php» . Это гарантирует, что ваши ссылки и ресурсы всегда будут использовать HTTPS. За счет этого также уменьшается вероятность ошибок в локальном развитии сайта, так как изображения, страницы и другие ресурсы загружаются из локальной среды разработки, а не из производственной среды.

Используйте схожие по протоколам URL-адреса для всех остальных доменов (например //petstore.example.com/dogs/biscuits.php ), или обновите ссылки своего сайта для перехода непосредственно на ресурс HTTPS.

Конструктор сайтов настройка протокола HTTPS

Изменения делаются в кострукторе сайтов, значок Настройки -> Настройки -> галочка в поле «Публикация с принудительным HTTPS» и нажать кнопку «сохранить».

Важно.
Следует понимать, что включение шифрования SSL без сертификата приведет к некорректной работе сайта..

Не нашли ответ на свой вопрос? Позвоните нашим специалистам по бесплатному телефону 8-800-100-16-15.

Источник

Поделиться с друзьями
admin
Оцените автора
( Пока оценок нет )
Как переводится?
Adblock
detector