Так что у меня есть эта проблема некоторое время, и я не могу найти подходящего решения.
Каждый раз, когда я включаю постоянные ссылки% postname%, моя статическая домашняя страница https://example.com/xy
перестает работать и выдает ошибку 301 «сайт не перенаправляет должным образом», в то время как любые другие сообщения или страницы на сайте перенаправляются правильно, например https://example.com/xy/about-us
, работает.
Если я вернусь к простым ссылкам, у меня не будет проблем. Я заметил две вещи: если я добавлю index.php в конец домашней страницы, она загрузится снова, например https://example.com/xy/index.php
.
Постоянные ссылки% postname% также работают, если я установил URL-адрес сайта внутри wp-config.php следующим образом
define( ‘WP_HOME’, ‘http://example.com/xy’ );
define( ‘WP_SITEURL’, ‘http://example.com/xy’ );
Однако я должен сохранять относительный путь URL-адреса сайта, поэтому это нежелательное исправление.
Я попытался отключить все плагины и изменить тему на значение по умолчанию, но безрезультатно. Я включил AllowOverride для своего корневого каталога. У меня включена перезапись модов в apache, мой .htaccess генерируется WP и выглядит так:
RewriteEngine On
RewriteBase /xy/
RewriteRule ^index\.php$ – [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /xy/index.php [L]
</IfModule>
1 ответ
Поэтому я решил эту проблему, добавив в свой functions.php следующее:
function disable_front_page_redirects($redirect_url) {
if( is_front_page() ) {
$redirect_url = false;
}
return $redirect_url;
}
add_filter( 'redirect_canonical', 'disable_front_page_redirects' );
Похожие вопросы
Новые вопросы
php
PHP - это широко используемый высокоуровневый, динамический, объектно-ориентированный и интерпретируемый язык сценариев, в первую очередь предназначенный для серверной веб-разработки. Используется для вопросов о языке PHP.