首页 > 解决方案 > 防止直接访问 php 文件,但允许包含它

问题描述

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

标签: php

解决方案


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

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

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

在你的index.php,你总是可以做require_once('../header.php');

这比将您的 Web 服务器配置为禁止访问要好。如果您按照其他人的建议使用.htaccess文件,则该配置可能会丢失、移动、被 webroot 之外的正确配置文件忽略等。您不希望意外泄露这些文件。


推荐阅读