Я пытаюсь создать белый список URI, которые доступны на моем сайте Wordpress.Ниже у меня есть только /golf
, но мне понадобится /wp-admin
и пользовательская страница входа /crmpicco-login
- что-то вроде (golf|wp-admin|crmpicco-login)
?
Мой Wordpress .htaccess
выглядит так:
ErrorDocument 404 /404.html
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
# if the request uri is not /golf
RewriteCond %{REQUEST_URI} !^/golf
# response 404 error
RewriteRule ^ - [R=404]
# this works!
#RewriteRule ^/?crmpicco$ - [R=404]
</IfModule>
# END WordPress
Когда я пытаюсь получить доступ к любой странице, появляется сообщение об ошибке:
Не найдено
Запрошенный URL / гольф не найден на этом сервере.
Кроме того, при попытке использовать ErrorDocument для обработки запроса произошла ошибка 404 Not Found.
Это то, что я вижу в своем журнале Apache, поэтому я предполагаю, что RewriteRule
неверно настроен:
[ср. 03 июля 11: 35: 05.964404 2019] [core: error] [pid 9673] [клиент 127.0.0.1:53894] AH00124: запрос превысил ограничение 10 внутренних перенаправленийиз-за вероятной ошибки конфигурации.Используйте LimitInternalRecursion, чтобы увеличить лимит, если это необходимо.Используйте 'LogLevel debug', чтобы получить обратную трассировку.
Закомментированный RewriteRule
для обслуживания 404 работ, но RewriteCond
, за которым следует RewriteRule
, не делает.