我有一个简单的功能来检查网站的标题:
$doc = new DOMDocument();
@$doc->loadHTMLFile($aUrl);
$xpath = new DOMXPath($doc);
if(!isset($xpath->query('//title')->item(0)->nodeValue))
{
return FALSE;
}
return $xpath->query('//title')->item(0)->nodeValue;
但是如果用户通过localhost或127.0.0.1,他们可以得到我的主机数据,我可以做一个简单的指南,允许用户输入这些值,但有时,我不能保证内部ip,如192.168.11.2,我怎么保护网站不会查询回我的主机?谢谢你!
将这一行添加到
if( preg_match( "/^(http:'/'/)(localhost|127.0.0.1|{$_SERVER["SERVER_ADDR"]}|{$_SERVER["HTTP_HOST"]}|www.yourhost.net)/i", $aUrl )) die( 'error' );
it may help
127.0.0.1或localhost对于外部用户将是自己的计算机/主机设置一个条件,检查主机名不是$_SERVER['SERVER_ADDR']或$_SERVER['SERVER_NAME']