停止IP地址和子域,仅允许域

时间:2011-11-01 07:33:49

标签: php subdomain

我想完全停止所有IP和子域名。有人编辑/修改它,因此它不会将IP和子域添加到数据库中。我只想在我的数据库中使用main(Top-Leven Domain)。这是我正在使用的模式:

$pattern = '/^(([\w]+:)?\/\/)?(([\d\w]|%[a-fA-f\d]{2,2})+(:([\d\w]|%[a-fA-f\d]{2,2})+)?@)?([\d\w][-\d\w]{0,253}[\d\w]\.)+[\w]{2,4}(:[\d]+)?(\/([-+_~.\d\w]|%[a-fA-f\d]{2,2})*)*(\?(&?([-+_~.\d\w]|%[a-fA-f\d]{2,2})=?)*)?(#([-+_~.\d\w]|%[a-fA-f\d]{2,2})*)?$/';

if (preg_match($pattern, $url) ) {
header("Location: good.php");
} else {
header("Location: bad.php");
die();
}

1 个答案:

答案 0 :(得分:2)

顶级域只包含字母。这是a list of TLDs

我认为你的意思是说“二级域名”,但即使这样也会给你带来麻烦。例如,.co.uk是一个非常受欢迎的SLD,但它不用于网站或任何东西。您提到的域名位于第三级,低于此SLD。 (anycompanywebsite.co.uk)。

所以,我所说的是你不能使用简单的正则表达式来做到这一点。您需要有一个第二级,第三级甚至第四级的列表,就像它们是TLD一样。