Apache2 – 以用户帐户运行Apache

我刚刚拿到了我自己的Linux(Debian Stable)服务器,并安装了Apache2,PHP5和MySQL。 它应该被用来托pipe我自己和其他网站。

就像现在一样,Apache正在以自己的用户身份运行。 这意味着我需要将所有文件和文件夹“chown”在webroot,Apache用户,否则Apache不能编辑和/或删除它们。 在安装插件等时,这是Wordpress中的一个大问题。

我谷歌了一下,发现一个网站,说你需要运行用户的Apache实例作为自己的用户,而不是运行Apache作为自己的用户。

我怎么做?

出于安全性和兼容性的原因,这不是一个好主意。

一个更好的主意可能是使用suexec,它执行每个人的CGI。

如果你真的想这样做

User youruserid Group yourgroupid 

到你的/etc/apache2/apache.conf

如果您不知道该文件的位置,或者认为该文件可能是其他文件,请扫描string“用户”和“组”。 可能已经有一个设置。


这里有一些你可能会喜欢的文档

用户指令http://httpd.apache.org/docs/2.0/mod/mpm_common.html#user

一般apache2 http://httpd.apache.org/docs/2.0/

使用apache2,您可以使用ITK多处理模块 。 这产生了在目标用户的uid和gid下运行的新进程。 我正在使用这个对我的托pipe解决scheme有很大的影响。

应该有可用的所有主要分发包。

我强烈build议不要让Apache像任何真正的用户那样运行。 如果在您的网站中发现漏洞,恶意用户可以阅读或更改您的个人文件。

WordPress将运行正常,您的用户帐户拥有的文件以及作为不同用户运行的Apache。 有几个文件和path需要和Apache服务器相同的组,并使组可写。 这样Apache可以进行必要的更改,而不会有用户完全访问其他文件的风险。

您应该阅读更改文件权限的WordPress文档。

mpm-itk工作良好,也可以用于非php的虚拟主机。

如果您需要更好的可扩展性和性能,fastcgi池是更好的select。

如果你想尝试一些新的东西,请检查php-fpm http://php-fpm.org/,http://www.dotdeb.org/上的 debian lenny软件包。