我需要为模块设置一个参数
(具体是通过设置参数 GeoIPEnable On 来激活地理编码模块)
在 httpd.conf 中根据请求 url 中的参数(例如 geo=true)。
如何才能做到这一点?
答案1
实现此目的的“好”方法是使用<If>
Apache 2.4 中的功能。
假设这不可用,您就只能使用相当不靠谱的解决方法。假设内容可以接受(如果您有动态内容,这可能会中断 - 您可以扩展 Apache 中运行的内容吗?),您可以按照以下方式进行操作:
RewriteEngine On
# Do an internal redirect of the requests that have the geoip=true param:
RewriteCond %{QUERY_STRING} geoip=true [NC]
RewriteRule ^(.*)$ /geoip$1 [PT,QSA,L]
# Make the content under /geoip identical to the docroot:
Alias /geoip /path/to/docroot
# And, configure /geoip for the GeoIP lookups:
<Location /geoip>
GeoIPEnable On
</Location>