不确定是否可以这样做。
但我需要一种方式来根据他们的国家IP地址重定向访问者。
基于国家/地区的IP地址重定向
之前有人提到它,
是的,我知道Geoip
,但我的主机没有它,我没有shell访问。
因此,我正在寻找另一种选择。
这是问题所在,
我的网站一般是自用,而我正在被垃圾邮件发送者和不必要的爬虫加
人寻找文件轰炸我甚至不have.these来自游客各地地球。
所以我需要一种方法来有效地做到这一点。
现在我只是用一个凌乱的方式与正则表达式重定向其中的一些。
是这样的。
#china ips-
#
RewriteEngine on
RewriteCond %{REMOTE_ADDR} ^(49\.(4|51|52|64|239)|54\.222) [OR]
RewriteCond %{REMOTE_ADDR} ^(91\.234|134\.196|159\.226|161\.207|166\.111) [OR]
RewriteCond %{REMOTE_ADDR} ^(168\.160|192\.(124|188)|193\.0)
RewriteRule !^folder/country\.html http://www.website.com/folder/country.html [L,NC,R]
虽然这个工作,它只是重定向上市正则表达式的IP地址的页面我选择。
这可能是20+的IP地址,但如果你有超过1000+的IP地址,你需要重定向,
(我这样做)你的htaccess文件往往变得非常大和混乱起来。
我宁愿在一个文本文件中的IP地址,并有htaccess的寻找它在cn.txt
,
或china.txt
然后发现在txt文件中的任何IP地址莫名其妙重定向到
http://www.website.com/folder/country.html
我知道我的主机是否有geoip
它可能会使这很容易。
我忘了提,我的网站在85%左右HTML,而我有一个图库论坛和常见问题是PHP,
我一般大多使用的HTML代码。 谢谢
为什么不简单地在PHP中重写它?您可以简单地打开一个带有IP地址的文件,通过它并在PHP中进行相应的重定向。 –
@MartyIX,感谢您的回复,我在PHP中完全没有任何经验,我不是从头开始编写代码的粉丝。我需要一些可以编辑的东西,这是我真正可以学习的唯一方法。 – TheFuz
看看这个SO回答:http://stackoverflow.com/questions/1038648/run-php-code-from-htaccess。虽然它涉及PHP,但您可以从中获得灵感,然后用您满意的另一种语言替换PHP。 – Stephan