我偶然发现了以下特点:
$handle = fopen(realpath("../folder/files.php"), "r");
无法读取文件,但是一旦我从文件中删除 php 标签,
它变得可读,并且我的脚本在页面上打印非空文件内容。
另外,file.php 永远不会被执行,所以我想知道为什么这是问题所在。
我猜想 Apache 或 PHP 不允许以文本方式读取包含 php 标签 PHP 的文件。
如何为我的特定文件启用它(当然在全球范围内这样做是不安全的)?
使用 PHP 5.2.x 和 Apache 2.0
我得到了它。我正在使用 Google Chrome 调试页面,我意识到在查看源代码时,Chrome 由于某种原因隐藏了 PHP 标签。我在 Firefox 上进行了相同的测试,查看源代码证明一切正常。
以下是测试详细信息:
Code:
$fh = fopen("test.php","r");
while ($line = fgets($fh)){
echo $line;
}
要读取的文件(test.php):
testing <?php testing2 ?> testing3
渲染(在 Chrome 和 Firefox 上):
testing testing3
查看源代码(使用firefox):
testing <?php testing2 ?> testing3
查看源代码(使用 Chrome - 我的错误来源):
testing testing3
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)