只有PHP的可读文件

时间:2013-02-11 10:48:36

标签: php chmod

我有另一个问题:

当我将localhost/folder/file.txt写入浏览器时,它会打开并显示file.txt的内容。

但我想让这个文件只能由PHP读取,而不是浏览器。

我用chmod尝试了所有内容,但它不起作用。有可能吗?

由于

5 个答案:

答案 0 :(得分:5)

写入外部 web根目录,然后Web服务器将不会使其可供客户端使用。 (不要求文件在文档根目录下供PHP阅读)。

其他选项包括:

  • 使用您的网络服务器的auth / authz系统来保护文件(不推荐用于此问题,因为配置错误更有可能破坏安全性,那么文件将被放置在错误的位置)
  • 使用数据库

答案 1 :(得分:3)

您可以拒绝访问.txt扩展程序。

.htaccess

# prevent viewing of a specific file
<Files file.txt>
 order allow,deny
 deny from all
</Files>

# multiple file types
<FilesMatch ".(htaccess|htpasswd|ini|phps|fla|psd|log|sh|txt)$">
 Order Allow,Deny
 Deny from all
</FilesMatch>

答案 2 :(得分:0)

您可以将文本文件作为BLOB或TEXT放入mySQL数据库。因此,浏览器无法通过查询(通过php)进行阅读。

答案 3 :(得分:0)

最简单的解决方案:

$s=file_get_contents('test.txt');

如果文件中有一些代码要执行,您可以eval

eval(file_get_contents('test.txt'));

答案 4 :(得分:-3)

你试过chmod到660吗?

我刚尝试使用我的网络服务器,但它不可用。