3

我正在开发一个 PHP 项目,为其他程序员开发模板引擎。这个想法很简单:将有一个带有模板的模板文件夹和一个带有页面的 pages 文件夹,php 去获取模板并使用当前 url 在其中插入页面。几年前我在没有面向对象的情况下完成了这个项目,但现在我正试图以面向对象为重点。

我面临的问题是关于配置。在原始系统中,我有一个带有硬编码配置的 PHP 文件(包含包含、javascript、页面等的文件夹的名称)。在新的我想用 XML 存储这些数据,但问题是在 Stackexchange 上搜索我发现了这个问题,如果我理解正确,如果我使用重写解决方案,即使通过PHP 脚本,所以我没有办法保护配置文件不被直接在浏览器中读取。

我应该如何处理这个?有比使用 XML 更好的解决方案吗?我也在避免使用数据库,因为这太简单了,无法涉及 mysql 连接等等。我很确定有一种方法可以让 XML 只能从服务器内部读取,但我不确定这是否是最好的解决方案。

有人可以告诉我在这种情况下如何进行吗?

首先十分感谢!

4

1 回答 1

5

最简单的解决方案是将 xml 文件放在比 /htdocs/ 或 /www/ 目录更高的目录中。这仍然可以通过 PHP 访问,但不能通过 HTTP 连接。

如果您希望某些外部 HTTP 请求可以访问该文件,您可以使用 .htaccess 文件保护目录,但我不建议将其作为企业级解决方案。或者或另外,您可以将文件 chmod 为 66(4)(不是 5.. 抱歉),这应该充分限制文件访问。

于 2013-07-26T21:28:50.993 回答