TL; DR
mod_rewrite
загружено .htaccess
доступно для записи AllowOverride ALL
установлено LogLevel debug
установлено - журналы показывают цикл перенаправления (см. ниже)
подробности
Блог WordPress находится в расположении файловой системы /var/www/html/
(т.е.index.php
там, как и все wp-*.php
файлы, такие как wp-settings.php
).
Общие настройки блога WordPress для Адрес WordPress (URL) и Адрес сайта (URL) оба установлены на https://example.com/blog
.
Когда я устанавливаю Настройки постоянной ссылки на Месяц и имя (или что-либо, кроме Plain ), файл .htaccess
автоматически изменяется, чтобы содержать следующий блок mod_rewrite
, и пути URL корректируются соответствующим образом, например, /blog/2019/03/hello-world/
, однако доступ к URL приводит к Внутренняя ошибка сервера .
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /blog/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /blog/index.php [L]
</IfModule>
# END WordPress
В журнале обнаруживается следующее:
Request exceeded the limit of 10 internal redirects due to probable configuration error.
AH00121: r->uri = /blog/index.php, referer: https://staging.example.com/blog/
AH00122: redirected from r->uri = /blog/index.php, referer: https://staging.example.com/blog/
... the above line repeated ...
AH00122: redirected from r->uri = /2019/03/10/hello-world/, referer: https://staging.example.com/blog/
намек на успех ...
С Постоянными настройками установлен на Обычный , файл .htaccess
практически пуст, и ссылки работают, хотя они имеют нежелательную форму /?p=123
:
# BEGIN WordPress
# END WordPress
Когда я устанавливаю Пользовательская структура , до /index.php/%year%/%monthnum%/%postname%/
, ссылки в блогах обновляются до формата /blog/index.php/2019/03/hello-world/
, и они работают, но теперь URL-адрес уродлив (/index.php/
).
Так почему неРазве это не работает с /%year%/%monthnum%/%postname%/
и автоматически установленными директивами .htaccess
?
подробности gory
Это не должно иметь значения, но для записи: это Блог WordPress размещен в экземпляре виртуальной машины ( экземпляр ВМ ) вычислительного механизма из Google Cloud Platform .