是否可以让我的php网站只为预定义的域名工作?

时间:2011-08-06 08:26:47

标签: encoding web dns

在索引中我可以写这个 -

if ($_SERVER['HTTP_HOST'] != 'www.example.com') {
    include("home.php")
}

但删除此检查非常容易,只需包含home.php即可运行任何域名的整个网站。

是否有任何无法删除的编码方式使本网站适用于其他域名?

2 个答案:

答案 0 :(得分:0)

如果有人可以访问您的代码,并且可以更改它,则无法阻止这种情况发生。

答案 1 :(得分:0)

如果你正在使用apache,你可以直接通过将一个名为“.htaccess”的文件添加到home.php所在的目录来禁止访问“home.php”:

<Files home.php>
  order deny,allow
  deny from all
</Files>

但更好的是,我会将home.php和其他文件放在名为“includes”的受保护目录中,并改为使用此“.htaccess”文件:

<Directory "includes">
  order deny,allow
  deny from all
</Directory>

现在,您只能在脚本中使用include("home.php");访问home.php。

如果不起作用,请确保在apache配置中启用了htaccess覆盖。 找到“AllowOverride”指令并确保设置“AllowOverride All”。