繁体   English   中英

.htaccess 重定向到 index.php - 404 错误不起作用

[英].htaccess redirect to index.php - 404 error not working

我正在尝试为我的网站设置 .htaccess。 如果输入了错误的 url 地址,我想将用户重定向到 index.php。 但是,当我输入错误的 url 时,它不会将我重定向到 index.php,但会向我显示错误(尝试使用 ErrorDocument 时遇到 Not Found 404 错误)。

我的 .htaccess 文件

Options -Indexes
DirectoryIndex index.php

<IFModule mod_rewrite.c>
RewriteEngine On
RewriteBase /rop/
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteRule ^([A-Za-z0-9-\/&_]+)/?$ index.php?etc=$1 [L]
</IfModule>

<Files config.php>
deny from all
</Files>

ErrorDocument 404 /index.php
ErrorDocument 403 /rop/pages/error/403.html

感谢帮助。

你使用本地主机吗? 这对我来说是工作。

ErrorDocument 404 http://localhost/[your folder name]/index.php

这是由于您的重写规则和ErrorDocument指令相互ErrorDocument

你的重写规则是这样的:

RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteRule ^([A-Za-z0-9-\/&_]+)/?$ index.php?etc=$1 [L]

这基本上意味着:

如果请求不是针对文件/目录(未找到),则转发到index.php?etc=<uri>

现在你也有这样的ErrorDocument指令:

 ErrorDocument 404 /index.php

如果未找到某些内容,则转发到/index.php

PS:您的正则表达式在重写规则中也不正确。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM