我知道一个解决方案是将.ini文件放在webroot之外,但我希望将配置文件作为我的webapp源代码树的一部分。
由于我想在其中放入数据库密码,因此我需要确保无法通过输入www.drstrangelove.com/missile_codes.ini来访问它。
我想相信有一个apache配置设置,但我不知道它是什么或在谷歌输入什么来找出。
答案 0 :(得分:3)
您可以使用.htaccess:
<Files "*.ini">
order deny,allow
deny from all
</Files>
或(如果您只想要单个.ini文件):将*替换为文件名。
答案 1 :(得分:2)
虽然Tobiask的回答可以满足您的需求,但我认为更好的解决方案是将.ini文件保留在htdocs(或www)目录之外,这样首先无法通过apache传递它。
答案 2 :(得分:1)
如果您无法使用.htaccess文件,您可以随时作弊: 用config.ini.php;
重命名你的ini文件把它放在第一行:
#<?php exit; ?>
user=username
pass=secret
这样,如果你试图通过webserver调用ini文件,那么将执行PHP代码,否则函数parse_ini_file
将跳过第一行,因为它被注释(“#”)
希望这个帮助