我没有修改.htaccess文件的经验。 我正在尝试向我的网站添加自定义错误页面,我从托管服务提供商(1and1)获得了以下模板。我知道如何添加页面,但我想逐行了解代码正在做什么。
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule (.*) /errordocument.html
ErrorDocument 400 /errordocument.html
RemoveType x-mapp-php4 .html
提前感谢您的帮助!
答案 0 :(得分:2)
让我们从第一行开始:
RewriteEngine On
- 非常简单,它在名称中说,它使重写引擎允许我们做很多事情。 (我不会详细介绍所有这些事情)
RewriteCond %{REQUEST_FILENAME} !-f
和RewriteCond %{REQUEST_FILENAME} !-d
基本上检查不是文件或目录的任何内容,如果满足这两个条件,如果没有,它将转移到RewriteRule
,然后什么都不会过去。
RewriteRule (.*) /errordocument.html
- 这基本上告诉服务器如果满足上述条件,则重定向到名为errordocument.html
的错误页面。 (这恰好符合您的上述条件)。
ErrorDocument 400 /errordocument.html
- 简单地说,这只是告诉服务器,如果收到400错误,则显示errordocument.html
页面。
最后RemoveType x-mapp-php4 .html
- 这基本上是告诉您的Apache服务器从网址末尾删除.html
的所有扩展程序。
有关这些内容及其使用范围的更深入信息,请点击here
查看Apache文档。我希望这可以帮助你更好地理解发生了什么。