我试图validation用户的所有url,除了正则expression式:
https://www.example.com/ ****任何****应请求authenticationhttps://www.example.com/exams/ ****任何****不应请求authentication
这是我今天的configuration,但它不工作:
<LocationMatch "^/exams"> Order allow,deny Allow from all </LocationMatch> <Location "/"> Order allow,deny Allow from all AuthType Basic AuthName "PLEASE,AUTHENTICATE" AuthBasicProvider ldap-employees Require valid-user </Location>
它要求对每个URL进行身份validation
我想你可以完成这个,如果你有mod_authz_host
和mod_rewrite
。 基本上设置一个环境variables,如果URL匹配/检查和寻找,如果它设置允许访问。 看下面的例子。 在这个例子中,你不会有额外的<Location>
标签。
SetEnvIf Request_URI "^/exams.*" accessgranted=1 <Location "/"> Order deny,allow Satisfy any Deny from all Allow from env=accessgranted AuthType Basic AuthName "PLEASE,AUTHENTICATE" AuthBasicProvider ldap-employees Require valid-user </Location>
http://httpd.apache.org/docs/2.2/mod/mod_authz_host.html#allow