WordPress wp-admin https цикл перенаправления

Я использую nginx в качестве своего веб-сервера, и я отредактировал файл конфигурации, чтобы указать на https, поэтому я изменяю настройки URL-адреса WordPress на https, а также добавил код администрирования ssl для WordPress в мой файл wp-config, но я продолжаю работать в ошибку " Эта веб-страница имеет цикл перенаправления "

введите описание изображения здесь>> </p></body></html>

43 голоса | спросил iamkingsleyf 3 WedEurope/Moscow2014-12-03T08:57:53+03:00Europe/Moscow12bEurope/MoscowWed, 03 Dec 2014 08:57:53 +0300 2014, 08:57:53

4 ответа


70

У вас добавлен $_SERVER['HTTPS'] = 'on'; на ваш wp-config.php ?

Вы также должны использовать плагин WP Migrate DB для перехода от http://yoursite.com в https://yoursite.com

ответил thaevok 25 FebruaryEurope/MoscowbWed, 25 Feb 2015 22:01:26 +0300000000pmWed, 25 Feb 2015 22:01:26 +030015 2015, 22:01:26
34

У меня была аналогичная проблема, и я просто добавил следующий фрагмент к своему wp-config.php:

/** SSL */  
define('FORCE_SSL_ADMIN', true);  
// in some setups HTTP_X_FORWARDED_PROTO might contain  
// a comma-separated list e.g. http,https  
// so check for https existence  
if (strpos($_SERVER['HTTP_X_FORWARDED_PROTO'], 'https') !== false)  
    $_SERVER['HTTPS']='on';

, как предложено в кодексе . Это будет необходимо только в том случае, если в настройке балансировки нагрузки (или межсетевого экрана) включена SSL-пересылка. Это означает, что, хотя вы можете получить доступ к сайту через HTTP в TLS /SSL, связь, которую получает ваш сервер, является только HTTP. Чтобы учесть это, необходим верхний заголовок, поэтому WordPress может «установить» HTTPS на on в массиве конфигурации $_SERVER.

ответил Elias 16 MarpmWed, 16 Mar 2016 23:27:58 +03002016-03-16T23:27:58+03:0011 2016, 23:27:58
7

Поскольку у меня еще нет привилегии комментария, я отправлю это дополнение в качестве другого ответа:

Решение, предложенное Elias, чтобы добавить следующее в wp-config.php, сделал трюк для меня:

/** SSL */  
define('FORCE_SSL_ADMIN', true);  
// in some setups HTTP_X_FORWARDED_PROTO might contain  
// a comma-separated list e.g. http,https  
// so check for https existence  
if (strpos($_SERVER['HTTP_X_FORWARDED_PROTO'], 'https') !== false)  
    $_SERVER['HTTPS']='on';

Однако он работал только для меня, когда я ставил его перед всем остальным в этом файле!

ответил Michael Jung 14 thEurope/Moscowp30Europe/Moscow09bEurope/MoscowThu, 14 Sep 2017 11:52:27 +0300 2017, 11:52:27
4

Еще одна версия для книг, просто добавьте ее в начало wp-config.php

Причина в том, что могут быть балансировки нагрузки или что-то, что не проходит по правильному значению https, поэтому вы должны схватить его из другого места и подделать его для wordpress.

if ( (isset($_SERVER['HTTP_X_FORWARDED_PORT'] ) && ( '443' == $_SERVER['HTTP_X_FORWARDED_PORT'] ))
    || (isset($_SERVER['HTTP_CF_VISITOR']) && $_SERVER['HTTP_CF_VISITOR'] == '{"scheme":"https"}')) {
    $_SERVER['HTTPS'] = 'on';
}
ответил Timo Huovinen 21 FebruaryEurope/MoscowbTue, 21 Feb 2017 15:33:57 +0300000000pmTue, 21 Feb 2017 15:33:57 +030017 2017, 15:33:57

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132