域特定URL include()豁免


Domain Specific URL include() exemption

我想允许一个URL放在php的include()中;但只有某些领域,而不是每个领域。其他域由我所有,并且在一个单独的服务器上。如果有人试图包含()任何其他域,我希望它们被禁止。

如果这不可能,是否有解决办法?

我的推荐?不要使用includes。以这种方式执行代码就像吞下一颗巧克力覆盖的樱桃炸弹。

您可以在web服务器上执行此操作,这样您甚至不会让不允许解析或获取任何文件的域执行此操作。您必须记住,任何请求都将通过web服务器和服务器的静态内容或被解析,这一切都需要时间,然后添加执行PHP脚本的时间。

$allowed_domains = array(
      'stackoverflow.com',
      'www.stackoverflow.com',
      'facebook.com',
      'www.facebook.com',
      'google.com',
      'www.google.com',
    );
    if(!in_array(parse_url($url, PHP_URL_HOST), $allowed_domains)) {
      // throw an error
    }