zencart教程:如何通过密码保护网站文件、目录,限制IP地址?

系统需求:
确认apache里加载了 mod_rewrite 和 mod_auth

基础知识:
下面提到的 AuthUserFile /home/path/.htpasswd ,用于指定密码文件.htpasswd, 该文件需要手工建立。 /home/path 是用于存放 .htpasswd 文件的目录,相应修改。
Google下能找到很多相关说明,也可以在线生成 .htpasswd 密码文件,例如:http://tools.dynamicdrive.com/password/

这些代码需要保存到 .htaccess 文件,并置于需要保护的目录下,例如zencart网店的admin目录下。

基本的密码保护方法:
代码: 全选

basic password protection

AuthUserFile /home/path/.htpasswd
AuthName “Username and password required”
AuthType Basic

Require valid-user

仅某些IP可以访问,其它的需要输入密码:
代码: 全选

password protect excluding specific ips

AuthName “Username and password required”
AuthUserFile /home/path/.htpasswd
AuthType Basic
Require valid-user
Order Deny,Allow
Deny from all
Allow from localhost
Allow from 111.222.333.444
Allow from 555.666.777.888
Satisfy Any

仅某些IP段的用户访问需要密码,其它IP的用户无需密码:
代码: 全选

password protect only for specified ips

AuthName “Username and password required”
AuthUserFile /home/path/.htpasswd
AuthType Basic
Require valid-user
Order Allow,Deny
Allow from all
Deny from 111.222.333.444
Deny from 555.666.777.888
Satisfy Any

密码保护单个文件:
代码: 全选

password protect single file

AuthName “Username and password required”
AuthUserFile /home/path/.htpasswd
Require valid-user
AuthType Basic

其中 protected.html 是需要输入密码才能访问的文件。

密码保护多个文件:
代码: 全选

password protect mulitple files

AuthName “Username and password required”
AuthUserFile /home/path/.htpasswd
Require valid-user
AuthType Basic

上面指定 “protected.html” 和 “passwords.txt” 文件需要密码才能打开。同样可以加上更多的文件。

密码保护多种文件类型:
代码: 全选

password protect mulitple file types

AuthName “Username and password required”
AuthUserFile /home/path/.htpasswd
Require valid-user
AuthType Basic

这样就密码保护了这些类型的文件:.inc, .txt, .log, .dat, .zip, .rar。

密码保护除了某个文件外的所有文件:
代码: 全选

password protect everything except a single file

AuthName “Username and password required”
AuthUserFile /home/path/.htpasswd
Require valid-user
AuthType Basic

Order Deny,Allow
Deny from all
Allow from 123.456.789
Satisfy any

这样就只有访问 open-access.html 这个文件不需要密码,该文件可以是保存在某个子目录中。

密码保护除了某些文件外的所有文件:
代码: 全选

password protect everything except specified files

AuthName “Username and password required”
AuthUserFile /home/path/.htpasswd
Require valid-user
AuthType Basic

Order Deny,Allow
Deny from all
Allow from 123.456.789
Satisfy any