我打算使用nginx代替apache,所以我想将此apache规则转换为nginx。
重新启动Nginx服务时出现以下错误
“ / etc / nginx / sites-enabled / default中的无效参数“ COUNTRY = $ 1””
原始Apache规则
SetEnvIf CF-IPCountry "(.*)" COUNTRY=$1
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTP:X-Forwarded-Proto} =https
RewriteCond %{ENV:COUNTRY} [A-Z]{2}
RewriteCond %{QUERY_STRING} !country [NC]
RewriteRule ^/sumthing(.*) %{HTTP:X-Forwarded-Proto}://%{HTTP_HOST}%{REQUEST_URI}?country=%{ENV:COUNTRY} [L,QSA,R]
</IfModule>
nginx规则
fastcgi_param CF-IPCountry "(.*)" COUNTRY=$1 ;
location / {
if ($query_string !~ "country"){
rewrite ^/consultation(.*) /%{HTTP:X-Forwarded-Proto}://$http_host$request_uri?country=$env_country redirect;
}
}
任何人都可以告诉我问题出在哪里