我需要Opera Mini的代理IP地址才能在Geo模块(nginx)中使用它。 Nginx可以自动为代理使用X-FORWARDED-FOR标头,但在哪里获取代理列表?
答案 0 :(得分:0)
我不确定您到底想要解决哪些问题,但我认为您希望为最终用户实施一些地理定位功能,而您的问题是关于要使用的IP地址。
如果是这样,请参阅Opera Mini请求标头和X-Forwarded-For的文档: http://dev.opera.com/articles/view/opera-mini-request-headers/
X - 转发,对于
这包含请求在从设备到Mini代理的路上传递的代理服务器的逗号分隔列表。列表中不是内部IP的第一项将始终是连接到Mini代理的IP地址,因此它是有关请求来源的最可靠信息来源,适用于地理位置等。
答案 1 :(得分:0)
无法在Opera网站的任何地方找到官方列表。这是some of those ips
[编辑]在此删除了我原来答案中的一段,因为这可能会产生误导。在阅读了nginx GeoIP源代码之后,似乎有必要知道所有'可信'的歌剧迷你代理,这样nginx GeoIP模块可以使用x-forwarded-for标头在这些代理后面获得IP。
答案 2 :(得分:0)
您确定Opera IP地址不在MaxMind数据库中吗? (这是nginx模块默认使用的数据库)
我的第一个赌注是认为这些IP地址将在MaxMind列表中,代理与否。
但我认为最好的办法是使用歌剧代理和来自任何公共HTTP proxy list资源的其他代理进行快速测试。然后验证您是否获得了代理IP的地理位置。
请记住将Nginx配置为使用x-forwarded-for IP作为地理位置。
real_ip_header X-Forwarded-For;
然后一个简单的测试示例可能是:
<html>
<head>
<title>What is my IP address - determine or retrieve my IP address</title>
</head>
<body>
<?php
if (getenv(HTTP_X_FORWARDED_FOR)) {
$pipaddress = getenv(HTTP_X_FORWARDED_FOR);
$ipaddress = getenv(REMOTE_ADDR);
echo "Your Proxy IP address is : ".$pipaddress. " (via $ipaddress) " ;
} else {
$ipaddress = getenv(REMOTE_ADDR);
echo "Your IP address is : $ipaddress";
}
$country = getenv(GEOIP_COUNTRY_NAME);
$country_code = getenv(GEOIP_COUNTRY_CODE);
echo "<br/>Your country : $country ( $country_code ) ";
?>
</body>
</html>
(我只是从其他网站复制/粘贴该示例,但我认为这样做很好)
答案 3 :(得分:0)
Opera Mini和Opera Turbo的代理(但实际上是MITM)服务器位于&#34; Opera Software AS&#34; IP地址块,包括:
37.228.104.0 255.255.248.0 82.145.208.0 255.255.240.0 107.167.96.0 255.255.224.0 141.0.8.0 255.255.248.0 185.26.180.0 255.255.252.0