簡體   English   中英

Apache-.htaccess:mod_rewrite和ErrorDocument不能一起使用

[英]Apache - .htaccess: mod_rewrite and ErrorDocument won't work together

我不確定這是什么錯誤,但無法將404錯誤重定向到特定頁面。 .htaccess的樣子如下:

RewriteEngine on 
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^(.+) - [PT,L]
RewriteRule ^(.+) index.php

ErrorDocument 404 http://www.someurl.com/error404/404.php

錯誤文件夾和文件存在,並且當我執行curl -i http://www.someurl.com/notexistent它將返回正確的404錯誤代碼。 但是沒有重定向,既沒有卷曲,也沒有瀏覽器。 那怎么可能? 抱歉,我不是這些.htaccess配置的專家,非常感謝您的幫助。

編輯1:我嘗試了不同的URL,如:

ErrorDocument 404 http://www.someurl.com/error404/
ErrorDocument 404 /error404/404.php
ErrorDocument 404 /error404/

但是沒有成功。

編輯2:我忘了提:mod_rewrite正常工作。 僅404重定向不起作用。

使用您的RewriteRule您可以將沒有真實文件或文件夾的所有頁面都重寫為index.php沒有404錯誤的異常...

嘗試:

RewriteEngine on 
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php? [L,R=404]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM