« Webmail Bigpicture - Webmail的结构图 | Main | mail address Autocomplete - 邮件地址自动补齐实现 »

版权声明:可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息及本声明。
本文网址:http://www.hzqbbc.com/blog/arch/2005/09/protect_files_i.html
 

September 13, 2005

Protect files in Apache - 使用AUTH保护特定文件

最近一个web虚拟主机用户提出一个要求,需要保护其几个特定的文件,凡是访问那个文件必须提供用户名和密码,而且不能对其程序或文件进行修改。

例如http://www.vhostuser.com/secret/noallowfiles.txt

这个文件如果要保护的话,可以利用Apache的mod_auth及core模块中提供的 指令混合起来,对符合条件的文件进行保护。

假设要保护某个secret目录的.doc文件,则可以在虚拟主机配置中增加:

<Directory "/path/to/vhost/home/secret/">
AllowOverride All
</Directory>

然后在secret目录里,编辑.htaccess文件:

<Files ~ ".txt">
  AuthType Basic
  AuthGroupFile /dev/null
  AuthName "Restricted Files"
  AuthUserFile /path/to/secret/.htpasswd

  <limit GET POST>
    require valid-user
  </limit>
</Files>

这样凡是请求xxx.txt的文件都会要求认证。密码就保存在.htpasswd里了。

这样做就不需要修改程序里,而且可以保护一些非程序文件。这是用一般的php/perl cgi程序等实现不了的。非常好用。

Posted by hzqbbc at September 13, 2005 09:04 AM

Comments

Post a comment




Remember Me?

(you may use HTML tags for style)