我正在使用cloudflare在http标头HTTP_CF_IPCOUNTRY中为服务器提供国家/地区代码。
我需要从http标头获取国家/地区代码,并使用.conf文件(虚拟主机)将其添加到apache服务器中的url参数。那可能吗?
服务器版本:Apache / 2.4.7(Ubuntu)
我有一个angular dist文件夹,我正在使用apache服务器提供文件,并且需要url参数中的国家/地区。
我的php服务和角度应用程序的配置文件(/ consultation / *)
<VirtualHost *:80>
ServerName hero.azure
ServerAlias hero.com
ErrorLog /var/log/apache2/error.log
DocumentRoot /var/www/hero/public
SetEnv APPLICATION_ENV "testing"
AliasMatch ^/consultation(.*) "/var/www/ng2/dist/index.html"
Alias "/ng2" "/var/www/ng2/dist/ng2/"
<Directory /var/www/hero/public>
<LimitExcept OPTIONS>
AuthType Basic
AuthName "user"
AuthUserFile /etc/apache2/htpass
Require user user
</LimitExcept>
DirectoryIndex index.php
AllowOverride All
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
这里有一些尝试添加查询
RewriteEngine on
RewriteCond %{QUERY_STRING} country
RewriteRule ^/consultation(.*)$ ^/consultation/(.*)?country="%{CF-IPCOUNTRY}i"&%{QUERY_STRING} [QSA]
答案 0 :(得分:0)
通过将此规则添加到虚拟主机来解决:
{{1}}