【发布时间】:2013-10-14 18:40:23
【问题描述】:
我正在试图弄清楚如何编写一个 .htaccess 文件以将任何不存在的文件或目录重定向到 web 根目录中的 index.html 文件。
我用这个指令弄明白了:
ErrorDocument 404 /index.html
问题是 Web 服务器仍然返回 HTTP 404 错误。我想为所有这些文件显示一个永久重定向。重要的是不要返回 404 错误。
建议赞赏!
【问题讨论】:
我正在试图弄清楚如何编写一个 .htaccess 文件以将任何不存在的文件或目录重定向到 web 根目录中的 index.html 文件。
我用这个指令弄明白了:
ErrorDocument 404 /index.html
问题是 Web 服务器仍然返回 HTTP 404 错误。我想为所有这些文件显示一个永久重定向。重要的是不要返回 404 错误。
建议赞赏!
【问题讨论】:
尝试将此规则添加到您的 htaccess 文件中:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^ /index.html [L,R=301]
这会检查请求不是文件,不是目录,也不是符号链接。然后将任何请求重定向到/index.html。
【讨论】:
/index.html,它不是空白的。不知道您所说的与链接有关的意思,我不知道您的网站是如何设置的。
有一个方便的FallbackResource directive in Apache
FallbackResource /index.html
【讨论】:
FallbackResource 将提供/index.html 页面,但不会永久重定向。它只是默默地为资源服务。