我的朋友让我更新他公司使用的PHP应用程序。我发现应用程序使用.ini扩展名来配置DB配置文件。该文件包含数据库主机地址,用户名和密码!!问题是我可以在网络浏览器上访问该文件。
我想了解原因。是否有任何特殊原因使用.ini扩展名的常规php文件???我只是不明白。
答案 0 :(得分:3)
您可以使用Zend_Config_Ini。它舒适而轻松。只是不要将配置文件放在任何用户可以访问它们的地方(例如public_html)。
答案 1 :(得分:3)
INI文件只是处理配置的一种方式,也许开发人员来自Windows开发背景并使用他熟悉的任何东西:)。此外,PHP提供了一种通过parse_ini_file函数解析INI文件的便捷方式。
您需要确保无法从网络访问.INI文件。将它移到docroot下面,这样你的PHP脚本仍然可以访问它,但随机浏览器不能。
答案 2 :(得分:3)
可读性是我过去使用ini filies for php script configs的主要原因之一。非编码人员至少曾经遇到过一次ini文件,并且能够理解它比简单的php文件更容易。
只需在文件顶部的注释行中添加一行代码,就可以通过服务器端配置阻止每个人都可读的ini文件的问题,甚至更好。
这样,当通过浏览器访问文件时,php将输出“禁止直接访问”,并且ini文件将继续像以前一样运行。
答案 3 :(得分:1)
对于它的价值,PHP传统上使用php.ini
来配置PHP。那么也许它是某种传统的东西?
答案 4 :(得分:1)
这似乎只是前程序员希望使用不同的文件类型进行配置。如果此文件没有其他用途,请将其重命名为* .php并将其忘记。如果没有,请将webserver配置为解析为php,或者更好地将其移动到目录,无法从Web服务器访问。