我正在开发一个 PHP 项目,为其他程序员开发模板引擎。这个想法很简单:将有一个包含模板的模板文件夹和一个包含页面的页面文件夹,php 获取模板并使用当前 url 将页面插入其中。几年前我在没有面向对象的情况下完成了这个项目,但现在我正在尝试以面向对象为重点。
我面临的问题是关于配置的。在原来的系统中,我有一个带有硬编码配置的 PHP 文件(包含 include、javascript、pages 等的文件夹的名称)。在新的一个上,我正在考虑用 XML 存储这些数据,但问题是在 Stackexchange 上搜索我发现this问题,如果我理解正确的话,如果我使用重写解决方案,即使 PHP 脚本也无法访问它,所以我没有办法保护配置文件不被直接在浏览器中读取。
我应该如何处理这个问题?有比使用 XML 更好的解决方案吗?我还避免使用数据库,因为这太简单了,无法涉及 mysql 连接等。我非常确定有一种方法可以让 XML 只能从服务器内部读取,但我不确定这是否是最好的解决方案。
有人可以告诉我在这种情况下如何进行吗?
首先十分感谢!
最简单的解决方案是将 xml 文件放置在树中比 /htdocs/ 或 /www/ 目录更高的目录中。 PHP 仍然可以访问它,但 HTTP 连接不能访问。
如果您希望使某些外部 HTTP 请求可以访问该文件,您可以使用 .htaccess 文件来保护该目录,但我不建议将其作为企业级解决方案。或者或者另外,您可以将文件 chmod 为 66(4)(不是 5..抱歉),这应该足以限制文件访问。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)