你好,我是一个贸易网站开发人员,而不是一个服务器工程师,请容忍我!
我刚刚有一个新的Ubuntu灯VPS服务器,我正在尝试配置。
我理解将php作为apache运行是运行php最快的方式。但是为了实现这一点,我必须将我的目录设置为777,以便php可以写入它们。反过来,ftp就不能再删除php创建的dir了。
这似乎不太理想。
我知道使用fast-cgi,'php用户‘和'ftp用户’是相同的,因此您不会遇到这些问题,并且不需要向777打开目录来允许写入,我理解这是一个安全问题。
那么,有什么利弊呢?
谢谢
所以ok 777显然不太好。但是,我怎样才能让apache-mod和ftp用户成为相同的--正如前面提到的,我不是服务器管理员!谢谢
发布于 2012-01-12 21:07:20
带有mod_php的Apache很容易安装,而且运行速度很快--但是它不扩展。每个请求都需要一个完整的线程--包括apache及其所有模块。这正是使其快速的原因--每个请求都得到一个php的专用实例。另一方面,很小数量的同时请求将占用所有可用内存,并将服务器拖慢到爬行。
如果您使用mod_php路径-@fuscata的答案提供了一种很好的方法--使用组来避免您的目录和文件可由“其他人”写。另一种选择是简单地使FTP用户与apache运行的用户相同--尽管从安全的角度来看这并不好。
我肯定会建议采用快速cgi方法--除了可以正确实现权限这一事实之外,它更好地利用了可用的资源。虽然单个请求的速度要慢一些,但是在负载较高的情况下,总体性能将比mod_php好得多。
使用mod_fastcgi与php-fpm -设置您的php-fpm池的用户名匹配您的FTP用户,并使用最严格的权限- 755通常是可以接受的目录(但您应该能够使用750)考虑将您的PHP文件的权限设置为640 -‘其他’实际上不需要对您的文件的读取权限(特别是包含数据库密码,电子商务密钥等的文件-尽管这些应该设置为600 -或400个一旦你输入了数据)。
发布于 2012-01-12 19:16:13
如果您决定坚持使用mod_php,有几种选择,但我建议如下:
https://serverfault.com/questions/349380
复制相似问题