+ -
当前位置:首页 → 问答吧 → apache2.2和tomcat6.0整合后,使用.htaccess进行访问控制,该如何配置????

apache2.2和tomcat6.0整合后,使用.htaccess进行访问控制,该如何配置????

时间:2010-11-24

来源:互联网

1:直接使用apache server,使用.htaccess进行访问控制,完全没有问题
2:当apache server和tomcat6.0整合后,想要是要.htaccess来进行访问控制:只有知道用户名和密码的用户才能访问tomcat的servlet时,使用.htaccess不起作用。
请问该如何设置????
(要求只能使用.htaccess来进行访问控制,不要使用配置WEB-INF/web.xml,这个我已经搞定了!!!)
apache server和tomcat进行整合时,使用的是http_proxy或者使用ajp_proxy都可以。
我的httpd.conf配置如下,测试已经能够和tomcat正常使用。
.....
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
......
LoadModule rewrite_module modules/mod_rewrite.so
......
<Location /test/>
  ProxyPass ajp://localhost:8009/test/
</Location>
.......
Alias /testnosecurity E:/apache-tomcat-6.0.29/webapps/test
<Directory "E:/apache-tomcat-6.0.29/webapps/test"> 

Options Indexes FollowSymLinks

AllowOverride All

Order allow,deny
Allow from all

</Directory>

使用的.htaccess文件如下:
AuthName test
AuthType Basic
AuthUserFile E:/apache-tomcat-6.0.29/webapps/test/.htpasswd
Require valid-user

.htaccess文件中的密码是使用apache自带的htpasswd.exe程序生成的密码,没有问题!!
我把.htaccess和.htpasswd文件都放在了webapps/test/目录下了!!!
请问我还需要配置什么么?现在按这种配置的话,无法实现访问控制!!!!!!就是,我在浏览器中输入
http://localhost/test/test之后,并没有弹出要输入用户名和密码的提示框,而是直接就返回servlet执行的结果了!!!

作者: tmaclc   发布时间: 2010-11-24

配置documentroot即可,这样在访问TEST目录下的URL时,直接通过apache,而访问其他URL时,代理到Tomcat,根据你实际情况进行调整。
<VirtualHost *:80>
  DocumentRoot E:/apache-tomcat-6.0.29/webapps/test
  ProxyPass / http://localhost:8080/
</VirtualHost>

作者: icy_csdn   发布时间: 2010-11-25

热门下载

更多