Переадресация .htaccess на страницу 404 RewriteRule - PullRequest
27 голосов
/ 12 октября 2011

Есть ли способ ввести RewriteRule в файл htaccess для перенаправления на страницу 404, если определенный путь к папке / URL-адресу был введен или достигнут?

Например, если я хочу, чтобы каждый пользователь былперенаправляются на страницу 404, если они попадают по адресу: www.mydomain.com/abc или www.mydomain.com/abc/ или что-либо, что идет после «abc», даже если эта папка действительно существует, я не хочу, чтобы пользователи былив состоянии достичь этого.Если они достигнут этого, я хочу, чтобы они увидели страницу с ошибкой 404.* Обратите внимание, что я не ищу настраиваемую страницу ошибки 404, я ищу способ перенаправления на страницу 404 по умолчанию.

Как я могу это сделать?Возможно ли это?

RewriteRule ^abc/(*)?$ [R=404,L]

И как я могу сделать то же самое в php, перенаправить на страницу ошибки 404?Еще раз, я не говорю об установке пользовательской страницы 404, я говорю о странице 404 по умолчанию, чтобы просто перенаправить пользователя на страницу ошибки 404 с помощью php.

Ответы [ 2 ]

32 голосов
/ 12 октября 2011

Вместо использования mod_rewrite вы можете сделать это с помощью директивы RedirectMatch:

RedirectMatch 404 ^/abc/.*$
5 голосов
/ 23 января 2017

Я сделал это на своем веб-сайте:

RewriteRule ^404/?$ 404.php
ErrorDocument 404 http://www.example.com/404/

И в корне моего сайта я разместил страницу 404.php для настройки этой страницы.

...