.htaccess不重定向到404.php而是显示页面名称

azpvetkf  于 2023-05-29  发布在  PHP
关注(0)|答案(4)|浏览(116)

我试图使我的网站自定义404页面,并在根目录中我使用此规则的.htaccess文件
ErrorDocument 404 404.php //I want to redirect to 404
因此,当我将有效的文件名(如home.php)更改为home1.php时,它不会重定向我,而是在该页面上回显404.php
边注:404.php仅在根目录中

332nm8kg

332nm8kg1#

这个应该可以了

RewriteEngine on
ErrorDocument 404 http://www.yoursite.com/404.php
ghg1uchk

ghg1uchk2#

.htaccess文件中,您应该能够用途:

RewriteEngine on
ErrorDocument 404 /404.php

您可以使用此方法设置其他错误文档,但我会将它们放在单独的错误目录中:

ErrorDocument 400 /errors/400.php
ErrorDocument 401 /errors/401.php
ErrorDocument 403 /errors/403.php
ErrorDocument 404 /errors/404.php
ErrorDocument 500 /errors/500.php
yquaqz18

yquaqz183#

你可以做以下的404旧网页与您的htaccess

RewriteEngine on
ErrorDocument 404 /404.php

但我个人建议

RewriteEngine on
RewriteRule home.php /home1.php [R=301,L]

因为这会从旧的页面名称重定向到新的页面名称,所以任何缓存的搜索引擎结果仍然会在正确的页面结束,而不是点击404

lyr7nygr

lyr7nygr4#

在我的例子中,使用Ubuntu发行版,如果指令ErrorDocumenthtdocs目录中的.htaccess或其他地方,则它没有效果:事实证明,它应该放在正确的/etc/apache/sites-enabled/*.conf文件中,在<VirtualServer>指令内(例如,如果网站提供https页面,则在<VirtualHost *:443>指令内)。

相关问题