0

我正在计划一个应用程序。该应用程序提供大量图像。因为我希望图像只对那些有密码的人可用,同时我想避免 htaccess 和 htpasswd 文件的麻烦,所以我的计划是将图像存储在 Web 目录之外并使用 readfile 提供它们。

我的问题是:使用 readfile() 与让 Apache 直接提供文件相比,性能差异有多大?我只是不太了解 Apache 和 PHP 的工作原理,无法知道我的计划是否明智。

好的。所以我在这个网站上做了一些浏览,有些人确实建议使用 readfile() 作为“安全”提供图像的一种方式——现在可以存储在网络根目录之外。我只是有这种感觉,这和htpasswd之间必须有其他选择。(感谢 Pekka 下面关于 x-sendfile 的评论。只是在这种情况下,这不是一个选项)。

谢谢

4

1 回答 1

1

问题是我喜欢 PHP,但它不是此类事情最快的编程语言。当你真的需要性能时,你应该看看Facebook 的HipHop来将你的文件编译成原生 C。

我不知道您网站的大小,但是当您有很多请求时readfile()file_get_contents()它可能会非常慢并且占用大量内存。

但这只有在您具有 root 访问权限时才有可能。

于 2013-09-24T22:15:50.767 回答