Чек лист перехода на протокол HTTPS Joomla сайта. Https на joomla
Как перевести сайт с протокола http на https в joomla
Друзья! Недавно я перевел свой сайт на защищенный протокол https. О причинах такого переезда я писать не буду, в интернете есть много информации про это. Например вот здесь. Я остановлюсь на технических моментах и особенностях переезда в Joomla. Так вот, что нужно сделать в первую очередь.
Во-первых, нужно проверить внешние подключенные скрипты и зменить их подключение на протокол https. Например, если у вас подключена библиотека jQuery, то вместо:
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>прописываем:
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>Во-вторых, устанавливаем SSL сертификат. Видов SSL сертификатов есть много, как платных так и бесплатных. Я установил для своего сайта бесплатный сертификат Let's Encrypt и сделал это в панели управления своего хостера ukraine.com.ua. Оним нажатием кнопки мыши я установил данный сертификат (активация прошла в течении 15 минут).
Также в настройках сайта я выбрал Переадресовывать запросы с http на https.
Теперь заходим в админ-панель Joomla и в Общих настройкак во вкладке Сервер включаем опцию Включить SSL для всего сайта.
А сейчас нужно сообщить поисковикам о переносе сайта на https-протокол. Вот как это нужно сделать в панели Яндекса для вебмастеров. Выбираем раздел Переезд и отмечаем опцию добавить HTTPS
Также не лишним будет в разделе файлы Sitemap добавить новую версию карты сайта уже с https-протоколом
Аналогично поступаю в Search Console Google. Нужно добавить все варианты адреса сайта: с HTTPS и с HTTP, с www и без. Вот как выглядит моя Search Console Google
Также в настройкак сайта выбираем, как отражать сайт, с www или без.
И аналогично добавляем карту сайта Sitemap
Вот впринципе и все, удачного переезда!
class="eliadunit">[Решено] Joomla. Включаем SSL/HTTPS = бесконечное перенаправление
В статье описаны способы решения проблемы с бесконечным перенаправлением после включения SSL в Joomla.
Если вы здесь, то, вероятно, уже поздно говорить о подготовительных моментах перед активацией функции SSL в Joomla, но может вы тот счастливчик, которому повезло найти эту статью и избежать часовой, дневной, недельной головоломки в поисках исправления сложившейся ситуации. Надеюсь статья вам поможет.
Существует несколько способов решения проблемы, связанной с бесконечным редиректом в Joomla после включения SSL. Зачастую, так или иначе, правки вносятся в файл .htaccess, config.php, либо базу данных. Разберем несколько вариантов решения этой проблемы.
Решение 1. Корректируем HTTPS через .htaccess
Вот первый и, как оказалось для меня, наименее очевидный выход - добавить в файл .htaccess следующую строку:
SetEnvIf X-HTTPS 1 HTTPSПочему наименее очевидный? Весь Интернет говорит о решениях, описанных ниже. Не знаю, может эта информация и есть где-то на плохо проиндексированном сайте, либо та страница вызывает отказы в 90% случаев, т.к. содержит мало информации в себе, из-за чего не появляется в первых результатах поисковой выдачи по запросам типа "joomla ssl https redirect loop". Этот способ мне посоветовал друг, ведущий отличный блог об администрировании Windows и обратившийся в техническую поддержку хостинга раньше меня, спасибо ему.
Решение 2. Корректируем HTTPS через .htaccess
Другой выход - добавить в .htaccess ОДНУ ИЗ ПАР (не все подряд!) строк нижеприведенного кода:
RewriteCond %{HTTPS} OFFRewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}либо
RewriteCond %{HTTPS} =onRewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [QSA,L]либо
RewriteCond %{HTTP:X-Forwarded-Proto} !httpsRewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]Решение 3. Добавляем HTTPS в config.php к адресу сайта
В файле config.php установить вручную значение для переменной $live_site
public $live_site = 'https://адрес-вашего-сайта';Решение 4. Чистим Cookies
И да, как бы ни банально это звучало, и как бы ни банально это было, берем и чистит куки сайта, кэш страниц, всё, что связанно с "проблемным" сайтом в браузере, чистим всё.
Чек лист перехода на протокол HTTPS Joomla сайта -
class="eliadunit">
Вступление
В теории переход сайта на протокол HTTPS с приобретением или получением SSL сертификата, должны сделать владельцы сайтов связанных с получением личной информации посетителей, включая данные банковских карт. Это прежде всего: Банки, Интернет магазины, сайты Государственных учреждений и Гос. услуг, ресурсы платежных систем и т.п.
На практике, переход на безопасный протокол HTTPS, неплохой повод сделать ревизию на сайте, обновить индекс поисковой выдачи, улучшить поведенческие факторы и доверие некоторых поисковых систем.
По практике перехода на HTTPS:
- ТИЦ сайта обнулится в течение 2-3 суток после перехода;
- Склейка зеркал произойдет через 3 недели;
- ТИЦ восстановится и может даже подняться через 1 апдейт.
Чек лист перехода на протокол HTTPS Joomla 3
Предлагаю свой чек лист перехода на протокол HTTPS сайта Joomla 3.
1.Сделать резервную копию сайта.
Перевод Joomla сайта на HTTPS достаточно безопасный, но резервная копия сайта не помешает;
2.Подключить SSL сертификат к домену.
Стоимость сертификата, зависит от выбранного типа сертификата SSL, от free до 200$/год. Проверить доступность сайта и его работоспособность по двум адресам http и https.
3.В панели хостинга (по возможности), включить переадресацию директивы HTTP на HTTPS.
На всех правильно настроенных панелях ISP, DirectAdmin, CPanel есть включение переадресации HTTP на HTTPS;
4.В настройках сайта Joomla включить режим SSL.
В административной панели сайта в Общих настройках>>>Сервер нужно включить режим SSL;
class="eliadunit">5.В счетчиках и других кодах на сайте поменять абсолютные адреса ссылок на относительные. Если необходимо, включить режимы SSL в аккаунтах счетчиков. Если необходимо, поменять коды счетчиков. В Google Analytics указать режим SSL в настройке аккаунта.
6.В расширениях Joomla установленных на сайт включить поддержку SSL (если есть).
7. Если не сделали в пункте 2 переадресацию, проверить доступность сайта и его работоспособность по двум адресам http и https.
8. Если не сделали в пункте 2, делаете редирект адресов http на https через директивы в файле .htaccess.
Работает только для сайтов, установленных на хостингах с веб-серверами Apache.
9. Проверить работу переадресации сайта с http на https.
10.Между этапами чистим кеш сайта и кеш браузера.
11.Если не видим зеленый замок в адресной строке браузера, смотрим ошибки на правой кнопке «мыши» в коде сайта используя инструменты для разработчика браузера.
©Joomla-abc.ru
Другие статьи сайта
class="eliadunit">
joomla-abc.ru
При работе по HTTPS на сайте Joomla 3 разваливается верстка
Сегодня столкнулся с очередной задачей - есть сайт на Joomla 3, его нужно заставить работать по протоколу HTTPS. Вроде бы все просто - зайти в панель управления хостинг-провайдера и по акции установить бесплатный SSL-сертификат. Все это не заняло много времени, единственное - пришлось зарегистрировать сайт в Желтых страницах - это требовалось для подтверждения получения SSL-сертификата. Регистрация бесплатная, труда не составила и в скором времени для домена был активирован SSL-сертификат и сайт можно было переключать на HTTPS.
В Joomla это делается на первый взгляд просто - в панель управления, раздел Система - Общие настройки - Сервер и в выпадающем списке выбираем последний пункт:
... сохраняем настройки и вроде бы все должно заработать! Проверяем...
Вводим в адресной строке браузера https://site.ru и видим, что сайт буквально развалился на части! Страницы отображаются криво, картинок нет, джаваскрипты не работают. В чем дело?
В Joomla 3 есть то ли баг, то ли особенность - чтобы заставить сайт корректно работать по HTTPS, нужно сделать три вещи:
1. Подключаемся к сайту по FTP и идем по адресу public_html/libraries/joomla/uri/uri.php. Открываем этот файд в редакторе и ищем строку 66. Там видим оператор IF и два действия - либо присвоить переменной https значение "://", либо "s://". Вставляем два раза "s://", так чтобы код имел вот такой вид:
if (isset($_SERVER['HTTPS']) && !empty($_SERVER['HTTPS']) && (strtolower($_SERVER['HTTPS']) != 'off')) { $https = 's://'; } else { $https = 's://'; }
Сохраняем файл на сервере.
2. Делаем перенаправление адресов с http:// на адреса с https://. Для этого заходим в файл .htaccess в корне сайта и добавляем в него строки сразу после RewriteEngine On
RewriteEngine onRewriteCond %{HTTP_HOST} ^site\.ru [NC]RewriteCond %{HTTP:X-Forwarded-Proto} ^http$RewriteCond %{HTTPS} offRewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
3. В файле Robots.txt не забываем поменять host: http://www.site.ru на host: https://www.site.ru
4. В Яндекс.Вебмастере нужно выполнить "переезд" сайта на домен с https://
На этом мой переезд сайта на протокол HTTPS был успешно завершен.
Как ие еще проблемы могут возникнуть при смене протокола с HTTP на HTTPS?
Еще могут возникнуть проблемы с изображениями, скриптами и формами, которые загружаются не по https://, а по http://. Если на страницах присутствуют элементы с прописанными вручную абсолютными адресами, то вполне возможно, что браузер не будет их отображать. Если это произошло, нужно при помощи консоли браузера отследить ошибки при загрузке и исправлять их уже вручную. Если же на сайте все адреса относительные, проблем возникнуть не должно.
webmaster.artem-kashkanov.ru
переход на https и где взять SSL сертификат
Рассмотрим как перевести Joomla с http на https, и где взять SSL сертификат бесплатно. Совсем бесплатно.
В Joomla, перейти на https-соединение довольно просто.Но кроме этого нужно ещё сообщить об этом Яндексу, чтобы он тоже знал. Но и здесь, всё делается без проблем.
С чего начать?
Первое что нужно сделать, это подумать а стоит ли переходить на https.Оно вам нужно?
Если на вашем сайте нет ни авторизации, ни оплаты товаров и других функций, которые требуют ввода персональных данных, то https вам точно не нужен.
Протокол https обеспечивает защищённое соединение и затрудняет перехват личных данных пользователей вашего сайта.Вот и всё.
Второй шаг.
Определиться с сертифкатом безопасности (SSL) и получить его.Они бывают разные, для доменов, для почты, с поддержкой кириллических доменов, с поддержкой под-доменов, для физ.лиц и т.д.
Подробнее можно посмотерть тут - reg.ru
Лично я использую сертификаты от LetsEncrypt. Они совершенно бесплатны и обеспечивают базовый уровень защиты.Что мне вполне достаточно.
Такие сертификаты доступны на хостингах с панелью управления ISP Manager 5, раздел SSL сертификаты.Я использую хостинг от FirstVDS.
Возможно эти сертифкаты доступны и на других хостингах, это лучше уточнить в технической поддержке хостинга.
Если LetsEncrypt не хотите, то нужно купить платный SSL сертификат и установить его на хостинг.Делать это самому не рекомендую, на это есть техническая поддержка хостинга. Попросите, вам всё установят.
Третий шаг.
После установки SSL сертификата на хостинг, когда он станет работоспособен, можно переключать режим работы сайта на SSL.
В Joomla это делается в Система - Общие настройки. Вкладка Сервер.Ставим значение "Весь сайт".
Четвёртый шаг.
Настройка сервера.
Сейчас нужно направить все запросы с http на https.Это можно сделать через htaccess или в настройках www-домена (зависит от хостинга).
Если у домена нет таких настроек, то здесь тоже не нужно экспериментировать, просто напишите в техподдержку хостинга и попросите их дать вам код для htaccess, который будет перенаправлять все запросы на https.
У меня на сервере в htaccess работает такой код:
RewriteEngine OnRewriteCond %{SERVER_PORT} ^80$ [OR]RewriteCond %{HTTP} =onRewriteRule ^(.*)$ https://kasyanov.info/$1 [R=301,L]Но это всё индивидуально для каждого сервера, лучше уточняйте в техподдержке, на это она и техподдержка)Скажу только что рекомендуется делать 301 редирект. С http на https.
Пятый шаг.
Надеюсь что 4-ый шаг был для вас простым. Теперь проверяем как работает сайт. Заходим на сайт с другого браузера или чистим кэш в своём текущем.
Пробуйте зайти на сайт с http и посмотрит как вас перенаправит на https.И на всех страницах сайта, в адресной строке, должен быть показан замочек, который говорит о защищённом соединении.
или
Если вы видите замочек и сайт работает нормально, то переход на SSL можно сказать завершён.
Теперь все переходы с поисковых систем будут направляться на https.URL адреса не изменяются, просто добавляется https.
Если же вы видите простое изображение земного шара или открытый замок.
Значит что-то на вашем сайте загружается по обычному протоколу http и это нужно исправить.
Что это может быть?
- шрифты загружаются по http
- какая то форма может грузиться по обычному протоколу
- изображения на странице также могут загружаться по обычному http соединению
- виджет стороннего сервиса и т.д.
Нужно посмотреть исходный код и найти загрузку элемента по http.Также это можно сделать через консоль.
Клик правой кнопкой мыши по любому элементу на странице -> из контекстного меню выбираем "Исследовать элемент" и переходим на вкладку Консоль.
Там будет написано что-то типа: Mixed content (смешанный контент) и будет показан адрес с которого идёт загрузка "небезопасного" содержимого.У меня, например, грузилась форма подписки с http.Нашёл этот модуль и изменил на https - всё стало отлично.
Если сами не сможете найти, напишите мне, помогу.
И ещё...
Расскажите Яндекс.Вебмастеру что вы переехали на https.Это можно сделать в Индексирование - Переезд сайта.
Нужно поставить галочку "Добавить HTTPS" и отправить заявку.
Хоть Яндекс и говорит что не несёт ответственности за количество проиндексированных страниц и позиции сайта, но как правило переход на https проходит безболезненно.
По крайней мере у меня всегда всё было в порядке.Через несколько недель в результатах выдачи появлялись ссылки на мой сайт уже с https.
Вот рекомендации самого Яндекса.
P.S.: Если в Яндексе что-то пойдёт не так, то вы можете задать вопрос в их тех.поддержку (поставив галочки на всех пунктах).Они отвчают не так быстро как хотелось бы, но отвечают)
Желаю вам успешного перехода на SSL.Если он оправдан, то не бойтесь - переезжайте.
С уважением, Олег.
Сохраните эту информацию к себе, чтобы не потерять:
И подписывайтесь на наш онлайн-журнал.С уважением, Олег Касьянов.
joomlatown.net
Случайно включил ssl на сайте Joomla как отключить
Подробное описаниеДля того, чтобы в Joomla отключить режим доступа по защищенному протоколу SSL (HTTPS), необходимо сделать следующее:
CONFIGURATION.PHP. На сервере хранится файл configuration.php. Расположен он в корневой директории вашего сайта. В этом файле нужно найти строку с параметром SSL. Это может быть var $force_ssl либо public $force_ssl в зависимости от версии системы управления Joomla. Также, в исключительных случаях, файл может иметь название, отличающееся от вышеуказанного. Не важно, главное - настройки сайта, в том числе и настройки ssl расположены в конфигурационном файле. При включенной поддержке SSL для панели управления будет значение = 1, для всего сайта = 2. Чтобы отключить ssl на сайте Joomla, необходимо установить значение = 0.
НЕ МОГУ ИЗМЕНИТЬ CONFIGURATION.PHP. Как правило, при попытке изменить конфигурационный файл Joomla, система выдает ошибку Доступ запрещен. Пожалуйста проверьте права доступа к файлу. Возможно не всегда и не у каждого вебмастера, но такое бывает. Данное сообщение появляется, если вы пытаетесь внести изменения в файл непосредственно из панели веб-хостинга. Все верно, система ответить отказом, так как права на запись установлены 0644. Вы не можете напрямую изменить файл.
ВРЕМЕННО ИЗМЕНИТЬ ПРАВА НА ЗАПИСЬ С 0644 НА 0755. Предварительно в файловом менеджере панели веб-хостинга присвойте файлу configuration.php значение права доступа = 0755. Таким образом вы разрешаете беспрепятственно вносить изменения в этот файл. Теперь можно снова попытаться отредактировать файл.
Если ошибка с правами доступа по-прежнему сохраняется, чтобы изменить файл configuration.php, скачиваем его (с хостинга), открываем с помощью Блокнота на своем компьютере и вносим все необходимые документы. После этого вновь загружаем на сервер (с заменой).
ВНИМАНИЕ! ВЕРНИТЕ ИСХОДНЫЕ ПРАВА НА ЗАПИСЬ = 0644
SSL ОТКЛЮЧЕН - САЙТ ВСЕ РАВНО НЕ РАБОТАЕТ. Можем вас успокоить, но это единственно верный способ, как отключить SSL в Joomla. Подождите минуту... пару минут. Не обновляйте в браузере страницы сайта клавишей F5, закройте все вкладки с вашим сайтом. После чего, введите адрес вручную либо из сохраненных закладок браузера. Заработает!
И напоследок, если все же проблема остается, скорее всего, по жестокой иронии, у сайта возникли иные, не связанные с SSL, проблемы. Возможно эти проблемы временные. Не нужно заново переустанавливать весь сайт. Все наладится, внимательно проверьте все шаги от начала до конца, еще раз загляните в файл configuration.php - точно изменили параметр ssl..?
help.winternete.ru
Joomla 2.5-3.5 решение проблемы с циклической переадресацией при включении SSL(https)
В связи со скорым выходом 56 версии Chrome, которая будет показывать уведомление 'Not Secure' при посещении сайтов без SSL, я постепенно перевожу все свои сайты на использование HTTPS.Сайты на Joomla конечно же тоже есть в этом списке.Поскольку у меня сайты работают не на одном сервере, не на одном apache, а на целой связке серверов, то возникают некоторые сложности с настройкой HTTPS подключения и корректной работой некоторых скриптов.
В моём случае если ничего не включать в настройках Joomla и заходить на неё по https, то картинки, css, js грузились по http, что не допустимо.
В интернете почти всюду встречается рецепт:1. Включаем принудительно SSL в настройках Joomla.2. Получаем циклическую переадресацию 'too many redirects'.3. Редактируем /libraries/joomla/environment/uri.php (в версии 3.5 /libraries/joomla/uri/uri.php) Заменяем
if (isset($_SERVER['HTTPS']) && !empty($_SERVER['HTTPS']) && (strtolower($_SERVER['HTTPS']) != 'off')) { $https = 's://'; } else { $https = '://'; } наif (isset($_SERVER['HTTPS']) && !empty($_SERVER['HTTPS']) && (strtolower($_SERVER['HTTPS']) != 'off')) { $https = 's://'; } else { $https = 's://'; } тем самым делая условие абсолютно бесполезным.В этом случае сайт больше не сможет работать по HTTP, не используя HTTPS.Вся эта ситуация вырисовывается от не верных настроек вэб сервера, в моём случае серверов.Бэкэнд всё так же думает что используется HTTP соединение, php соответственно тоже, ссылки строятся без учёта HTTPS.Рекомендую для начала почитать статью "SSL между фронтендом и бэкендом через несколько прокси серверов" и сделать как там указано. В таком случае не нужно будет вносить изменения в файлы скрипта.
Но если хостер не ведётся на ваши уговоры, или у вас что-то ещё не получается, можно изменить всё тот же uri.php, но несколько иным способом.Находим код и комментируем его, в начале строки поставив два слеша '//'.if ((isset($_SERVER['HTTPS']) && !empty($_SERVER['HTTPS']) && (strtolower($_SERVER['HTTPS']) != 'off'))) Строкой ниже добавляем строкиif ((isset($_SERVER['HTTPS']) && !empty($_SERVER['HTTPS']) && (strtolower($_SERVER['HTTPS']) != 'off')) || (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && !empty($_SERVER['HTTP_X_FORWARDED_PROTO']) && (strtolower($_SERVER['HTTP_X_FORWARDED_PROTO']) != 'off'))) в этом случае Joomla будет проверять не только наличие переменной $_SERVER['HTTPS'], но и $_SERVER['HTTP_X_FORWARDED_PROTO'], который доступен на много чаще в не совсем верных конфигурациях.Плюс этого способа в том, что в Joomla не нужно включать принудительное использование SSL, ваши пользователи по прежнему могут использовать сайт как по HTTP, так и по HTTPS.Ещё раз, в настройках Joomla 'Включить SSL' это принудительное включение, т.е. при входе на сайт по HTTP, автоматически все будут перенаправляться на версию сайта с использованием HTTPS.Ссылки на статический контент (картинки, css, js) должны формироваться правильно без этого параметра. Но Joomla должна верно определять что сейчас работает через HTTPS.
Использованы материалы:anikin.pwissues.joomla.org
dimetrius.net