我需要一个URL只能为某些已定义的用户访问。在URL中有一个查询参数,它是鉴别器。
URL可能是这样的:HTTPS://my.my.com/my-app/view / …
提供的解决方案适用于Apache v2.4
通过a检查env变量值 If 一个指令 Location* 指示:
If
Location*
RewriteCond %{QUERY_STRING} myQueryParam=allUsers RewriteRule . - [E=no_auth_required:1] <Location "/my-app/view/myView.xhtml"> <If "reqenv('no_auth_required') == 1"> Require uniqueID user1ID user2ID </If> </Location>
尝试这个,基本上告诉apache匹配后的任何事情 xhtml 这不是问号。
xhtml
RewriteEngine on RewriteCond %{QUERY_STRING} myQueryParam=allUsers RewriteRule "/my-app/view/myView[.]xhtml[^?]*" - [E=no_auth_required:1] <LocationMatch "/my-app/view/myView[.]xhtml[^?]*"> Require uniqueID user1ID user2ID </LocationMatch>