.htaccess 文件用法大全
1.1 什么是 .htaccess 文件
从本指南中,你将可以学习到有关 .htaccess 文件及其功能的知识,并用以优化你的网站。尽管 .htaccess 只是一个文件,但它可以更改服务器的设置,允许你做许多不同的事情,最流行的功能是您可以创建自定义的“404 error”页面。.htaccess 并不难于使用,归根结底,它只是在一个 text 文档中添加几条简单的指令而已。
判断你的主机是否支持:
许多主机支持 .htaccess,但实际上并不会特别声明。一般来说,如果你的主机使用 Unix 或 Linux 系统,或任何版本的 Apache 网络服务器,从理论上都是支持 .htaccess
的。判断你的主机是否允许 .htaccess,一个标志很好的是它是否支持文件夹密码保护。
子目录中的指令会覆盖更高级目录或者主服务器配置文件中的指令。.htaccess 必须以 ASCII 模式上传,最好将其权限设置为 644。
1.2 如何创建 .htaccess 文件
创建 .htaccess 文件也许会给你带来一些困难。写文件很容易,你只需要在文字编缉器里写下适当的代码。真正困难的可能是文件的保存,因为 .htaccess
是一个由扩展名组成的文件名(它事实上没有文件名),而在一些系统(如
Windows)中无法直接保存这样的文件名。在大多数操作系统中,你需要做的是将文档保存成名为:“.htaccess”(包括引号)。或者将其先命名为
htaccess.txt,上传到服务器后再重命名。
2.1 自定义错误页
个性化的错误页面让你的网站在出错的时候看上去更专业。你可以通过在 .htaccess 文件里加入下面的文字将其变成自定义页面:
举例来说,如果我的根目录下有一个 nofound.html 文件,我想使用它作为 404 error 的页面:
2.2 阻止显示目录列表
如果你的目录里没有 index 文件,浏览器默认会显示该目录下所有的文件,这会带来安全隐患。你可以键入以下命令阻止目录列表显示:
2.3 阻止/允许特定的 IP 地址
你可以封禁一个 IP 地址:
或者允许一个 IP 地址:
2.4 替换 index 文件
你可以轻易的设置新的缺省文件名:
2.5 重定向页面
将请求重定向到站内或站外的不同文档:
3.1 密码保护
在 .htaccess 里加上代码,再将文档放进你要保护的目录下:
AuthType Basic
AuthUserFile /full/path/to/.htpasswd
Require valid-user
3.5 防止盗链
如果不喜欢别人在他们的网页上连接自己的图片、文档,可以通过以下指令实现:
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www\.)?example.com/.*$ [NC]
RewriteRule \.(gif|jpg)$ - [F]