我正在开发一个PHP项目,为其他程序员设计模板引擎。这个想法很简单:有一个模板文件夹和一个页面文件夹,php会获取模板并将当前url中的页面插入到其中。几年前我完成了这个项目,但当时没有使用面向对象编程方法。现在我想用面向对象的方式来实现。
我遇到的问题是关于配置的。在原始系统中,我有一个PHP文件,其中包含硬编码的配置(包含包含、javascript、页面等文件夹的名称)。在新系统中,我考虑使用XML存储这些数据,但问题是,在Stackexchange上搜索后,我发现了这个问题,如果我理解正确,如果我使用重写解决方案,甚至PHP脚本也无法访问它,因此我无法防止配置文件被直接读取到浏览器中。
我该如何处理这个问题?是否有比使用XML更好的解决方案?我还避免使用数据库,因为这太简单了,不需要涉及mysql连接等。我相信有一种方法可以使XML仅从服务器内部可读,但我不确定是否这是最好的解决方案。
有人能告诉我如何在这种情况下继续吗?
非常感谢!
我遇到的问题是关于配置的。在原始系统中,我有一个PHP文件,其中包含硬编码的配置(包含包含、javascript、页面等文件夹的名称)。在新系统中,我考虑使用XML存储这些数据,但问题是,在Stackexchange上搜索后,我发现了这个问题,如果我理解正确,如果我使用重写解决方案,甚至PHP脚本也无法访问它,因此我无法防止配置文件被直接读取到浏览器中。
我该如何处理这个问题?是否有比使用XML更好的解决方案?我还避免使用数据库,因为这太简单了,不需要涉及mysql连接等。我相信有一种方法可以使XML仅从服务器内部可读,但我不确定是否这是最好的解决方案。
有人能告诉我如何在这种情况下继续吗?
非常感谢!
.php
格式的“配置文件”时要小心。如果直接访问此文件,客户端将看到整个内容,包括数据库密码和您可能在其中拥有的所有其他敏感参数。我根本不建议您这样做,即使您已经配置了某些内容来保护其访问。当涉及到安全性时,始终最好结合尽可能多的技巧,以确保即使某些内容无法保护它,访问限制也不会被绕过。 - Havenard