我是 GeoIP 解決方案的新手。關於遺留 GeoIP 資料庫的一些事情已經發生了變化,這使得它看起來有點複雜。
我在 AWS Linux 上
我已經安裝了 GeoIP:
rpm -qa |grep GeoIP
GeoIP-devel-1.4.8-1.5.amzn1.x86_64
GeoIP-1.4.8-1.5.amzn1.x86_64
阿帕契/httpd 是:
轉 -qa |grep httpd
httpd24-2.4.41-1.88.amzn1.x86_64
httpd24-tools-2.4.41-1.88.amzn1.x86_64
我已經在 maxmind 網站上設定了一個帳戶,並像這樣填充了 /etc/GeoIP.conf:
SNIP
帳戶 ID 已編輯
許可證密鑰已編輯
版本 ID GeoLite2-ASN GeoLite2-城市 GeoLite2-國家/地區
結束剪斷
我在 /var/log/httpd/error_log 看到的錯誤如下:
開啟檔案 /usr/share/GeoIP/GeoIP.mmdb 時發生錯誤
開啟檔案 /usr/share/GeoIP/GeoIP.mmdb 時發生錯誤
開啟檔案 /usr/share/GeoIP/GeoIP.mmdb 時發生錯誤
遍歷資料庫時發生錯誤 ipnum = 886277125 - 也許資料庫已損壞?
遍歷資料庫時發生錯誤 ipnum = 886277125 - 也許資料庫已損壞?
遍歷資料庫時發生錯誤 ipnum = 168300841 - 也許資料庫已損壞?
遍歷資料庫時發生錯誤 ipnum = 168300643 - 也許資料庫已損壞?
遍歷資料庫時發生錯誤 ipnum = 168300841 - 也許資料庫已損壞?
遍歷資料庫時出現 ipnum = 0 錯誤 - 也許資料庫已損壞?
所以我檢查是否能夠從資料庫中提取資訊:
mmdblookup --file /usr/share/GeoIP/GeoLite2-Country.mmdb --ip xxx.xxx.xxx.x 國家名稱 en
“愛爾蘭”
現在我們知道 GeoIP 資料庫包含資料;我們知道它正確識別了我們測試伺服器的 IP 位址的來源國家。此時的問題是 apache 仍然無法載入 GeoIP 資料庫。
我不清楚下一步可能要採取什麼措施來排除故障。
另外,我不確定這有多重要,但它安裝在 Jira/Confluence 伺服器上,因此 apache/httpd 服務偵聽 443,然後將流量傳遞到 java 實例。我認為這並不重要,因為流量首先到達 apache。由於某種原因,apache 似乎無法存取 geoip 資料庫。我嘗試將資料庫的所有權從 root 更改為 apache:apache ,但這也不起作用。
下一步是什麼?
[Wed Jan 22 21:14:25.057803 2020] [so:warn] [pid 13168] AH01574: module ssl_module is already loaded, skipping
VirtualHost configuration:
*:443 redacted
(/etc/httpd/conf.d/ssl.conf:77)
*:80 redacted
(/etc/httpd/conf/httpd.conf:359)
ServerRoot: "/etc/httpd"
Main DocumentRoot: "/var/www/html"
Main ErrorLog: "/etc/httpd/logs/error_log"
Mutex default: dir="/var/run/httpd/" mechanism=default
Mutex mpm-accept: using_defaults
Mutex cache-socache: using_defaults
Mutex authdigest-opaque: using_defaults
Mutex watchdog-callback: using_defaults
Mutex proxy-balancer-shm: using_defaults
Mutex rewrite-map: using_defaults
Mutex ssl-stapling-refresh: using_defaults
Mutex authdigest-client: using_defaults
Mutex lua-ivm-shm: using_defaults
Mutex ssl-stapling: using_defaults
Mutex proxy: using_defaults
Mutex authn-socache: using_defaults
Mutex ssl-cache: using_defaults
PidFile: "/var/run/httpd/httpd.pid"
Define: DUMP_VHOSTS
Define: DUMP_RUN_CFG
User: name="apache" id=48
Group: name="apache" id=48