Форум русской поддержки Joomla!® CMS
24.06.2017, 05:57:27 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
   
   Начало   Поиск Joomla 3.0 FAQ Joomla 2.5 FAQ Joomla 1.5 FAQ Правила форума Новости Joomla Реклама Войти Регистрация Помощь  
Страниц: [1]   Вниз
  Добавить закладку  |  Печать  
Автор

Циклическая переадресация ssl

 (Прочитано 961 раз)
0 Пользователей и 1 Гость смотрят эту тему.
cvesty
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 2


« : 30.01.2016, 15:08:02 »

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

Случайно в админ панели включил ssl (для всего сайта) и после этого выбивается ошибка: "На этой странице обнаружена циклическая переадресация ERR_TOO_MANY_REDIRECTS" (хром).
Пробовал менять в файле configuration.php => public $force_ssl = '0'; - правда там и так было "0". Я пробовал разные значения вводить, в итоге - ничего.
Нашел на просторах форумов еще вариант изменить в строчке "://" => "s://" в файле /libraries/joomla/uri/uri.php. Еще нашел изменить строку в файле /libraries/joomla/application/route.php, в строке 86, поменял код ($ssl === 1) на ($ssl === -1).

Но ничего не попомогло. Есть языковые плагины, но с ними работало все ок. Вот только после включения ssl все рухнуло. И да, сертификатов нет, если чего.

Может она как-то в БД отправило данные, которые влияют на значение ssl. Может там пошуршать?
Может как-то запретить переадресацию в Joomla, чтобы попасть в админку и выключить ssl, а потом включить обратно эту переадресацию.
Доступ к хостингу есть.

P.S. Joomla 3.4.3
« Последнее редактирование: 30.01.2016, 15:13:19 от cvesty » Записан
cvesty
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 2


« Ответ #1 : 30.01.2016, 20:30:10 »

В общем, бекап сайта помогло восстановить.
Тему можно закрывать.
Записан
PaLyCH
Живу я здесь
******

Репутация: +146/-19
Offline Offline

Пол: Мужской
Сообщений: 978


Архитектор сайтов


« Ответ #2 : 02.09.2016, 11:25:12 »

Решение было найдено на англоязычном форуме Joomla. Чтобы исправить её нужно открыть файл ./libraries/joomla/environment/uri.php.(В Joomla 3.4 этот файл находится ./libraries/joomla/uri) Найти там код:

Код
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://';
}
Записан
draff
Практически профи
*******

Репутация: +169/-5
Offline Offline

Пол: Мужской
Сообщений: 2769


step by step


« Ответ #3 : 02.09.2016, 13:38:58 »

Давно и здесь есть это решение http://joomlaforum.ru/index.php/topic,329766.0.html
Записан
PaLyCH
Живу я здесь
******

Репутация: +146/-19
Offline Offline

Пол: Мужской
Сообщений: 978


Архитектор сайтов


« Ответ #4 : 02.09.2016, 13:51:14 »

Давно и здесь есть это решение http://joomlaforum.ru/index.php/topic,329766.0.html
По запросу в яндексе выводится именно эта страница, сюда и добавил код
Записан
asingl
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 3


« Ответ #5 : 31.01.2017, 16:25:58 »

Проблема циклической переадресации возникает в том случае, если сервер при заходе по https не устанавливает переменную $_SERVER['HTTPS'] = 'on';
Решить эту проблему можно не трогая код движка, достаточно вписать в файлы /defines.php и /administrator/defines.php (если их нет, то создать) следующий код:
<?php
if (!empty($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https' || !empty($_SERVER['HTTP_X_FORWARDED_SSL']) && $_SERVER['HTTP_X_FORWARDED_SSL'] == 'on') {
    $_SERVER['HTTPS'] = 'on';
}
?>
Записан
Страниц: [1]   Вверх
  Добавить закладку  |  Печать  
 
Перейти в:  

Powered by SMF 1.1.21 | SMF © 2006, Simple Machines

Joomlaforum.ru is not affiliated with or endorsed by the Joomla! Project or Open Source Matters.
The Joomla! name and logo is used under a limited license granted by Open Source Matters
the trademark holder in the United States and other countries.

LiveInternet