在 htaccess 中重定向 404 错误后重写 URL

Rewrite URL after redirecting 404 error in htaccess

如何重定向 404,我在 htaccess 中添加了这个

ErrorDocument 404 http://example.com/404/
ErrorDocument 500 http://example.com/500/
# or map them to one error document:
# ErrorDocument 404 /pages/errors/error_redirect.php
# ErrorDocument 500 /pages/errors/error_redirect.php

RewriteEngine On
RewriteBase /

RewriteCond %{REQUEST_URI} ^/404/$
RewriteRule ^(.*)$ /pages/errors/404.php [L]

RewriteCond %{REQUEST_URI} ^/500/$
RewriteRule ^(.*)$ /pages/errors/500.php [L]

# or map them to one error document:
#RewriteCond %{REQUEST_URI} ^/404/$ [OR]
#RewriteCond %{REQUEST_URI} ^/500/$
#RewriteRule ^(.*)$ /pages/errors/error_redirect.php [L] 

它减少了,但它们在增加,有什么方法可以正确重定向,或者我可能漏掉了什么。我怎样才能修复所有这些问题?

谢谢

您不需要使用 RewriteRules。您可以简单地使用绝对路径而不是使用完整的 url 作为错误文档目标:

ErrorDocument 404 /pages/errors/404.php