Intereting Posts
Параметры запроса в $ _GET не соответствуют URL-адресу, названному get_posts пуст при вызове через Ajax дублировать записи в базе данных при использовании save_post или wp_insert_post Почему включение Permalinks делает страницы не найдены? Сообщения WordPress нового пользователя / забытого пароля нарушены Как дублировать запрос curl XML с использованием API HTTP? Проверка проверки почты, если назначен дочерний термин Классифицировать пользовательские типы сообщений Как изменить частоту архива медиафайла в папке uploads для wordpress blog echo do_shortcode не работает над шаблоном темы Как исправить неожиданное перенаправление посетителей после включения multisite в WP3? wordpress add_submenu_page добавляет неработающую ссылку Как подключиться к img src с помощью HTML-шаблона электронной почты в WordPress Использовать данные параметров из URL-адреса в WooCommerce Checkout Текстовые данные WordPress для оформления темы

Перемещение с http на https и www. URL-адрес не-www

Я действительно сражаюсь с чем-то здесь. Я пытаюсь изменить свой сайт, чтобы перейти с www. к не-www, а также http: // к https: //

Я обновил параметры в options-general.php ( адрес (адрес) WordPress и URL- адрес сайта ). Оба они используют версию, отличную от www, а также https: // now.

Я также обновил настройку cookie в wp-config.php :

define( 'COOKIE_DOMAIN', 'mysite.co.uk' ); 

Я могу получить доступ к wp-admin просто отлично на https и в версии, отличной от www. Тем не менее, index.php просто хочет держать меня в бесконечном цикле, перезагружая домашнюю страницу до тех пор, пока браузер не уйдет. Я не могу поверить, насколько это было тяжело!

У кого-нибудь есть предложения по тому, что попробовать? До сих пор я потратил 3 часа на то, что должно было потратить минуты.

Для чего это стоит, я отключил ВСЕ плагины (в случае, если это был один из них странный), но все же это не работает.

Вероятно, стоит упомянуть, что это должна быть проблема с WP, так как редактирование index.php отлично работает, если я просто поместил это в нее:

 <?php /** * Front to the WordPress application. This file doesn't do anything, but loads * wp-blog-header.php which does and tells WordPress to load the theme. * * @package WordPress */ /** * Tells WordPress to load the WordPress theme and output it. * * @var bool */ define('WP_USE_THEMES', true); echo header(); echo "FOO"; 

ОБНОВЛЕНИЕ: Интересно, я думал, что просто перейду через код и попытаюсь посмотреть, где его жуть. Он получает /wp-includes/template-loader.php, а затем попадает в цикл:

 do_action( 'template_redirect' ); 

… Я не звоню, где это происходит после этого? (чтобы попробовать и отлаживать больше)

ОБНОВЛЕНИЕ 2: Я только что установил этот плагин: https://wordpress.org/support/plugin/debug-wp-redirect/ . Его супер старый, но он показал мне, откуда происходит перенаправление:

 Debug WP Redirect Location: https://mysite.co.uk/ Status: 301 Backtrace: File: /home/rachel/web/mysite.co.uk/public_html/wp-includes/class-wp-hook.php Line: #298 Function: redirect_canonical Arguments: array(1) { [0]=> string(27) "http://mysite.co.uk/" } 

Я просто не знаю, почему его отказ (и использование http вместо https здесь, и я думаю, это то, откуда происходит цикл)

ОБНОВЛЕНИЕ 3: Я не знаю почему, но это ТОЛЬКО случается на главной странице!

 http://www.foo.co.uk/wires-eyewear/ http://foo.co.uk/wires-eyewear/ https://www.foo.co.uk/wires-eyewear/ https://foo.co.uk/wires-eyewear/ 

Все работает нормально. Но:

 http://www.foo.co.uk http://foo.co.uk https://foo.co.uk/ http://foo.co.uk 

… все застряли в бесконечном цикле. Эг, это так расстраивает!

ОБНОВЛЕНИЕ 4: Мне удалось получить трассировку стека, но я не понимаю, что происходит.

 PHP message: File: /home/rachel/web/ladympresents.co.uk/public_html/wp-includes/class-wp-hook.php PHP message: Line: #298 PHP message: Function: debug_wp_redirect PHP message: Arguments: PHP message: array(2) { [0]=> string(28) "https://ladympresents.co.uk/" [1]=> int(301) } PHP message: PHP message: File: /home/rachel/web/ladympresents.co.uk/public_html/wp-includes/plugin.php PHP message: Line: #203 PHP message: Class: #WP_Hook PHP message: Function: apply_filters PHP message: Arguments: PHP message: array(2) { [0]=> string(28) "https://ladympresents.co.uk/" [1]=> array(2) { [0]=> string(28) "https://ladympresents.co.uk/" [1]=> int(301) } } PHP message: PHP message: File: /home/rachel/web/ladympresents.co.uk/public_html/wp-includes/pluggable.php PHP message: Line: #1181 PHP message: Function: apply_filters PHP message: Arguments: PHP message: array(3) { [0]=> string(11) "wp_redirect" [1]=> string(28) "https://ladympresents.co.uk/" [2]=> int(301) } PHP message: PHP message: File: /home/rachel/web/ladympresents.co.uk/public_html/wp-includes/canonical.php PHP message: Line: #516 PHP message: Function: wp_redirect PHP message: Arguments: PHP message: array(2) { [0]=> string(28) "https://ladympresents.co.uk/" [1]=> int(301) } PHP message: PHP message: File: /home/rachel/web/ladympresents.co.uk/public_html/wp-includes/class-wp-hook.php PHP message: Line: #298 PHP message: Function: redirect_canonical PHP message: Arguments: PHP message: array(1) { [0]=> string(31) "http://www.ladympresents.co.uk/" } PHP message: PHP message: File: /home/rachel/web/ladympresents.co.uk/public_html/wp-includes/class-wp-hook.php PHP message: Line: #323 PHP message: Class: #WP_Hook PHP message: Function: apply_filters PHP message: Arguments: 

Я думаю, что теперь это больше и проблема с www. удаляется из URL-адреса. Но я почему-то не понимаю. У меня отключен каждый плагин, я полностью перенастроил БД (я даже попытался использовать плагин для поиска и замены БД и замены старого URL на новый), и все же домашняя страница отказывается работать! Есть либо основная ошибка, с которой я столкнулся, либо что-то еще в игре. Это немного, что меня озадачивает:

 PHP message: PHP message: File: /home/rachel/web/ladympresents.co.uk/public_html/wp-includes/class-wp-hook.php PHP message: Line: #298 PHP message: Function: redirect_canonical PHP message: Arguments: PHP message: array(1) { [0]=> string(31) "http://www.ladympresents.co.uk/" } 

URL-адреса идеально подходят для этой части, а затем он случайным образом изменяет ее обратно не только на http:// , но и на www. бит снова!

ОБНОВЛЕНИЕ 4: Так сюжет сгущается! Теперь выясняется, что проблема заключается в использовании пользовательской страницы для главной страницы!

Если я изменил отображение Front page на « Front page display » (вместо « Статическая страница (выберите ниже) », то она будет работать … но, очевидно, у меня есть страница с мусором, на которой нет ничего, что нам нужно. «Я тестировал это с разными темами, и у всех у них такая же проблема. ARGH!

Solutions Collecting From Web of "Перемещение с http на https и www. URL-адрес не-www"

Добавьте следующее в свой .htaccess ..

 # force https on the front of the site RewriteEngine On RewriteCond %{HTTPS} !=on RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301] 

https://stackoverflow.com/questions/4398951/force-ssl-https-using-htaccess-and-mod-rewrite

если на nginx советуется следующее.

 server { listen 80; server_name yoursite.com www.yoursite.com; return 301 https://yoursite.com$request_uri; } 

см. http://www.wpbeginner.com/wp-tutorials/how-to-add-ssl-and-https-in-wordpress/

для других областей, таких как изменения настроек сайта для https.