Apache-2.4

GeoIP:重定向除特定國家以外的所有國家

  • March 4, 2018

我正在使用 Apache 的 GeoIP 模組和 MaxMind 數據庫根據訪問者的 IP 地址確定訪問者所在的國家/地區,並將其重定向到國家/地區子文件夾,如下所示:

RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^US$
RewriteRule ^(.*)$ https://example.com/us$1 [L]

我想將所有國家/地區重定向到 /us 子文件夾,中國和俄羅斯除外。此處列出了國家/地區程式碼列表,但我更願意將萬用字元應用於重寫條件,而不是在我的.htaccess文件中列出每個國家/地區。

有可能做類似的事情RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^*$嗎?還是我必須在所有國家/地區擴展重寫條件RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^(US|CA|ZA|NG|GH|)$

您可以簡單地使用否定!來重定向除 ChinaCN和 Russia之外的任何內容RU

RewriteEngine on
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} !^(CN|RU)$
RewriteRule ^(.*)$ https://example.com/us/$1 [L]

引用自:https://serverfault.com/questions/899882