防止通过浏览器直接访问 inde.php


Prevent Direct Access to inde.php via the browser

我正在制作n个具有年龄验证网关的酒精网站,希望称为默认.html它位于我的网络空间的根目录中。我使用了Joomla,它有两个索引文件,一个来自根文件夹,另一个来自我正在使用的模板。现在我知道我可以使用 .htaccess 文件限制直接访问,但我的问题是我应该把它放在根文件夹还是我的模板文件夹中?

如果它位于template文件夹中,则仅在访问该文件夹时考虑它。所以这不是正确的地方。

将其放在根文件夹中。

Joomla的模型在站点根目录中使用index.php文件,但如果您阻止该文件,则站点将无法工作。

你有没有看过Joomla上的内容限制扩展!扩展目录?

编辑我只是看了一眼,发现这个 - 年龄锁定 - 它似乎可以做你想要的。

我在网关页面中设置了一个cookie,然后检查它是否存在于模板的索引文件中。因此,一旦您登陆网关,就会设置cookie。

这是设置 cookie 的代码

var theDate = new Date(); var oneYearLater = new Date(
theDate.getTime() + 31536000000       );    var expiryDate =
oneYearLater.toGMTString(); document.cookie =    "myTusker=tuskerUser;
expires=expiryDate;

然后在模板索引文件中,我检查是否设置了cookie,如果没有,它将重定向到名为default.php的网关页面。下面是代码片段。

$cookies = $_COOKIE;
if(!array_key_exists('myTusker', $cookies)) {
header("Location:http://zmbiz.net/tpfnew/default.php");
}