php - 防止直接访问 php 文件但允许包含它

标签 php

这个问题在这里已经有了答案:





Prevent direct access to a php include file

(33 个回答)


去年关闭。




嗨,我正在尝试为我想建立的网站制作零件,它会像:
header.php、footer.php 等...
我希望这些文件只有在我包含它时才能工作,并且没有人可以直接访问它们。
有什么办法可以做到吗?

最佳答案

在您的 Web 根目录中根本不包含这些脚本是一种常见且最佳的做法。您可以将包含的内容放在其他地方的目录中。

也就是说,您可能有这样的目录:

/www
  index.php
/includes
  header.php
  footer.php

在您的 index.php ,你可以随时做require_once('../header.php');
这比将 Web 服务器配置为禁止访问要好。如果您使用 .htaccess文件,如其他人建议的那样,该配置可能会丢失、移动、被 webroot 之外的正确配置文件忽略等。您不会希望意外泄露这些文件。

关于php - 防止直接访问 php 文件但允许包含它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59797490/

相关文章:

php - 为什么 `rename`删除源文件失败,而 `unlink`有效

php - "SELECT"命令的准备语句失败,在 PHP 中使用 mysqli

javascript - Ajax 表单在当前页面提交

javascript - ajax提交表单为什么不能回显$_POST

php - 更新随机选择的行

javascript - 检查输入数量是否大于数据库可用数量

php - 如何修改 WooCommerce 中的商店页面主查询以显示列表中每个产品的变体?

php - SQL 最近日期

php - 将(双字节)字符串转换为十六进制

javascript - 使用ajax分配外部变量