首页 > 网站 > Apache > 正文

Windows环境之apache使用.htaccess保护目录

2024-08-27 18:22:39
字体:
来源:转载
供稿:网友

        我们经常看到LINUX/UNIX环境下apache使用.htaccess文件进行目录访问控制的例子,但是很少看到Windows下的例子,我使用google是没找到,^_^.其实,WIN环境下的设置方法也是完全一样的。

       下面就简要的介绍一下WIN环境的设置方法。

        STEP1   首先,当然是修改httpd.conf配置文件,定义需要访问控制的目录,我这里假设为“E:WellGoodweb”,同时,建立了一个基于域名的虚拟主机(www.ilinux.com.cn)也指向该目录。则需要在配置文件中增加以下内容。


###################################################
#设定目录权限
####################################################
<Directory "E:/WellGood/web/">
    AllowOverride AuthConfig
    Order allow,deny
    Allow from all
</Directory>
###################################################
#以下设置虚拟主机
###################################################
<VirtualHost www.ilinux.com.cn:80>
    ServerAdmin forlinux@hotmail.com
    AspNetMount / "e:/WellGood/web"
    DocumentRoot "e:/WellGood/web"
    ServerName www.ilinux.com.cn
    ErrorLog logs/www.ilinux.com.cn-error_log
    CustomLog logs/www.ilinux.com.cn-access_log common
</VirtualHost>

STEP2.   建立密码档

进入apache2/bin目录执行以下命令>   htpasswd -c winntapache.passwd admin

本命令的作用是 在/winnt目录下建立一个名称为apache.passwd的密码文件,并指定该文件的所有者是admin

STEP 3. 设定.htaccess文件的内容

在e:/wellgood/web/目录下建立.htaccess文件并输入以下内容

# 加入以下格式的内容:
# 本文件用来测试.htacces 认证方法
AuthName "页面保护测试"
Authtype Basic
AuthUserFile /winnt/apache.passwd#c:/winnt/我用的是win2K
require user admin

其实,对于.htaccess文件修改的时候会有点麻烦,其实也可以使用其他任意的文件名只需要在配置文件httpd.conf文件中指定。下面一段摘自apahe文档中的一段话就详细的说明了这点。

.htaccess文件(或者"分布式配置文件")提供了针对目录改变配置的方法, 即,在一个特定的文档目录中放置一个包含一个或多个指令的文件, 以作用于此目录及其所有子目录。

说明:如果需要使用.htaccess以外的其他文件名,可以用AccessFileName指令来改变。 例如,需要使用.config,则可以在服务器配置文件中按以下方法配置:

AccessFileName .config

允许放在这些文件中的指令取决于AllowOverride指令, 此指令按类别决定了.htaccess文件中哪些指令才是有效的。 如果一个指令允许放在.htaccess文件中,则,在本手册的说明中,此指令会有一个覆盖段, 其中说明了为使此指令生效而必须在AllowOverride指令中设置的值。

 STEP 4. 在浏览器中输入http://www.ilinux.com.cn

ok,起作用了,^_^,见下图。


输入刚才设置的用户名以及密码,就可以发现可以访问了。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表