Php 将不存在的url重定向到错误页面
我想将所有不可用的链接重定向到error.php页面 这是我想要的 如果有人输入了一个不存在的链接,那么我想将他们重定向到我的错误页面,而不是webhost的404错误页面Php 将不存在的url重定向到错误页面,php,.htaccess,mod-rewrite,Php,.htaccess,Mod Rewrite,我想将所有不可用的链接重定向到error.php页面 这是我想要的 如果有人输入了一个不存在的链接,那么我想将他们重定向到我的错误页面,而不是webhost的404错误页面 www.example.com/wrong_page.php 应该重定向到 www.example.com/error.php 您可以将此指令添加到.htaccess文件中: ErrorDocument 404 /error.php 有许多类型的错误页面(只需谷歌搜索)。您可以使用.htaccess来处理它们
www.example.com/wrong_page.php
应该重定向到
www.example.com/error.php
您可以将此指令添加到
.htaccess
文件中:
ErrorDocument 404 /error.php
有许多类型的错误页面(只需谷歌搜索)。您可以使用.htaccess来处理它们。比如说
ErrorDocument 500 /errordocs/500.html
ErrorDocument 404 /errordocs/404.html
ErrorDocument 401 /errordocs/401.html
ErrorDocument 403 /errordocs/403.html
您需要在
.htaccess
文件中进行设置。您可以使用或只需将此行添加到新的.htaccess文件:
//Custom 404 errors
ErrorDocument 404 error.php
除了错误页面之外,您可能还希望禁用目录列表或更改目录的默认页面。尽管如此,还是使用了.htaccess文件。如果您是新手,只需使用我提到的链接。这是我的.htaccess
<Files .htaccess>
order allow,deny
deny from all
</Files>
IndexIgnore */*
ErrorDocument 400 /err_400.php
ErrorDocument 401 /err_401.php
ErrorDocument 403 /err_403.php
ErrorDocument 404 /err_404.php
ErrorDocument 500 /err_500.php
命令允许,拒绝
全盘否定
IndexIgnore*/*
ErrorDocument 400/err_400.php
ErrorDocument 401/err_401.php
ErrorDocument 403/err_403.php
ErrorDocument 404/err_404.php
ErrorDocument 500/err_500.php
您有两个选项可将错误的请求URI重定向到错误页面
www.example.com/wrong_page.php
1)内部重定向
您的web服务器将在内部将错误请求重定向到错误页面
在您的WebRoot/.htaccess
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ /error.php [NC,L]
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ http://example.com/error.php [R,NC,L]
2)外部重定向
您的web服务器将从外部将错误请求重定向到错误页面
或者在您的WebRoot/.htaccess
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ /error.php [NC,L]
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ http://example.com/error.php [R,NC,L]
重写条件检查请求的文件名是否不是目录或文件,然后重写规则将其重定向到错误页面