Php IP检查通过列表
我有一个我所在国家的ip列表文件,如下所示(txt文档): 关于这一点,我有两个问题 1-如果用户在该列表中,我可以通过.htaccess文件转发该用户吗?(如果他是,用这个地址。如果不是这个地址) 2-如何通过PHP检查“用户是否在我的国家/地区”?我是说,我怎么能这么说Php IP检查通过列表,php,.htaccess,ip,Php,.htaccess,Ip,我有一个我所在国家的ip列表文件,如下所示(txt文档): 关于这一点,我有两个问题 1-如果用户在该列表中,我可以通过.htaccess文件转发该用户吗?(如果他是,用这个地址。如果不是这个地址) 2-如何通过PHP检查“用户是否在我的国家/地区”?我是说,我怎么能这么说 if (strstr('list.txt',$_SERVER['REMOTE_ADDR'])) *1).htaccess文件 Apache Web服务器提供的访问者阻止功能使我们能够拒绝特定访问者的访问,或允许特定访问者的
if (strstr('list.txt',$_SERVER['REMOTE_ADDR']))
*1).htaccess文件
Apache Web服务器提供的访问者阻止功能使我们能够拒绝特定访问者的访问,或允许特定访问者的访问。这对于阻止不需要的访问者,或者只允许网站所有者访问网站的某些部分(如管理)非常有用*
ErrorDocument 403 /specific_page.html
area.*
order allow,deny
deny from 255.0.0.0
deny from 123.45.6.
allow from all
使用“Order Allow,Deny”指令时,请求必须匹配Allow或Deny,如果两者都不满足,则请求被拒绝
文件1)
文件2)
2)概念证明(不能说这是可行的……)
一,;您可以通过IP重定向到保留页:
# Redirect a user to /specific_page.html based on their IP address.
RewriteCond %{REMOTE_ADDR} ^10\.0\.0\.2$ [OR]
RewriteCond %{REMOTE_ADDR} ^127\.0\.0\.2$
RewriteCond %{REQUEST_URI} !specific_page\.html$
RewriteCond %{REQUEST_URI} !\.(js|png|gif|jpg|css)$
RewriteRule ^ /specific_page.html [R=302,L]
二,;查看哪些建议使用。使用
.htaccess
无法执行此操作。您需要使用php检查它,然后重定向到新地址。它适用于静态ip,您不能使用文件中的ip列表。抱歉,我还没有看到。如果文件中有一个列表,那么必须在全局/头文件/引导文件中使用PHP来检查和重定向。若你们有一个列表,为什么不把这个列表放在htaccess中呢?你们能告诉我如何从文件中读取ip列表并插入到.htaccess中吗?就像我上面的回答一样RewriteCond%{REMOTE\u ADDR}^127\.0\.0\.1$[或]
。这是两个ip地址。您希望如何将list.txt
文件的内容插入htaccess?
$current_ip = $_SERVER['REMOTE_ADDR'];
$valid_ip = false;
// Convert IPs to Regex
foreach($cfg['ipallowed'] as $index=>$ip);
{
$ip = str_replace('.', '\\.', $ip);
$ip = str_replace('*', '[0-9]|^1?\\d\\d$|2[0-4]\\d|25[0-5]');
if (preg_match($ip, $current_ip)
{
$valid_up = true;
break;
}
}
if ($valid_ip)
# Redirect a user to /specific_page.html based on their IP address.
RewriteCond %{REMOTE_ADDR} ^10\.0\.0\.2$ [OR]
RewriteCond %{REMOTE_ADDR} ^127\.0\.0\.2$
RewriteCond %{REQUEST_URI} !specific_page\.html$
RewriteCond %{REQUEST_URI} !\.(js|png|gif|jpg|css)$
RewriteRule ^ /specific_page.html [R=302,L]