您的位置:首页 > 运维架构 > Apache

apache验证-针对客户端IP,head头文件,以及用户名/密码的验证

2006-08-25 15:26 417 查看
本篇文章主要教给你,如何通过apache 进行验证访问你.so引擎的客户端用户,特别适合DSO模式。

现在告诉你两种模式:

1、服务端ip,refer 调用DSO引擎,403限制访问 (适合服务端调用)

2、用户名/密码弹出框 验证访问(适合url访问,客户端)

第一种、apache验证模式:服务端ip,refer 调用DSO引擎,403限制访问

对此你有以下几步操作完成。

第一步,你最好做一个auth.conf 验证成功文件,当然也可以直接写到 /etc/httpd/conf/httpd.conf 里面

#头文件中为 userid=001

SetEnvIfNoCase Referer "userid=001" local_ref=1

#访问引擎的 IP

SetEnvIfNoCase Remote_Addr "172.16.74.139" local_ref=1

第二步,验证,让只有auth.conf中 local_ref=1的用户才可以访问你的 DSO 服务
写一个 mod_search.conf (好习惯), /etc/httpd/conf/httpd.conf 中include它

#包含so模块
loadModule search_module modules/mod_search.so

#服务部署
<Location /LocalSearch>
SetHandler LocalSearch
Log4Cpp /apache/smartls/log4cpp.properties
WordTable /apache/smartls/smartlsData/wordTable.txt
WordTableEntry /apache/smartls/smartlsData/wordTableEntry.txt
PoiBal /apache/smartls/smartlsData/Poi.bal
PoiBas /apache/smartls/smartlsData/Poi.bas
PoiNdx /apache/smartls/smartlsData/Poi.ndx
PoiACode /apache/smartls/smartlsData/ACode.ndx

AnTable /apache/smartls/smartlsData/AnTable.txt
CnTable /apache/smartls/smartlsData/CnTable.txt
LsIDTable /apache/smartls/smartlsData/LsIDTable.idx
</Location>

#验证DSO服务,只有auth.conf的用户才可以访问
<Location /LocalSearch>
SetHandler LocalSearch
Order Allow,Deny
Allow from env=local_ref
</Location>

第二种、用户名/密码弹出框 验证访问(适合url访问,客户端)

#输入框 验证

<Location /LocalSearch>
SetHandler LocalSearch

AuthType Basic
AuthName "Restricted Files"
AuthUserFile /usr/local/awstats/passwd
Require user 51ditu_admin
require valid-user

</Location>

#查看认证的用户名密码

vi /usr/local/awstats/passwd

chaiqi:S4EYx.WkmiBLg
51ditu_admin:LYonGpvj1/5Es

#那个密码是这样生成的

htpasswd -c chaiqi.htpasswd chaiqi

输入2次密码就ok !

你也可以用mySql作为验证用户库

#AuthMySQLHost localhost
#AuthMySQLUser root
#AuthMySQLPassword 123456
#AuthMySQLPasswordField user_passwd
#AuthMySQLDB test
#AuthMySQLUserTable user_info
#AuthMySQLPwEncryption none
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: