很少有不同的php“包装器”(?)。它们之间有什么区别?试图谷歌一些,但似乎无法找到信息。(mod-php 不能用谷歌搜索)。
为什么我可以选择一个而不是另一个?
虽然我作为 Linux用户很自在,但我的 Linux Admin-fu 有点弱。因此,我在这里寻找有关我将要构建的 CentOS 服务器的指导。
我需要为我们的一些客户端设置一个 Apache2 Web 服务器。我希望每个客户端的 Web 内容都USERDIR位于静态 HTML 站点的主目录下(在 apache.conf 中,对吗?)。我希望 Apache 作为客户端运行 ( suexec?)。他们的一些东西将是 PHP 应用程序,我的印象是我也想看看suphp。
所以基本上我想看起来像一个共享网络托管公司的小版本。考虑到这些有多常见,我想我很容易找到一个很好的当前操作指南来设置这一切,但到目前为止我运气很少。我怀疑我的搜索词已关闭。
所以问题(随意回答任何或所有):
我计划让最终用户通过 SSH、SFTP 或 SCP 访问他们的东西(如果这会影响任何事情)。
在此先感谢您的帮助。
[编辑] 我应该早先提到这一点:我寻求模拟与文件权限和所有权相关的共享托管服务提供商的一个关键目标。我真的很想避免教用户需要更改这些东西只是为了查看他们的添加/更改。
我想向您询问您所知道的 PHP/Apache 配置方法,以及它们的优缺点。我自己开始:
---------------- PHP 作为 Apache 模块----------------
优点:速度快,因为您不需要每次都启动 exe,尤其是在mpm-worker模式下。您还可以在此模式下使用各种PHP 加速器,如 APC 或 eAccelerator。
缺点:如果您在 mpm-worker 模式下运行 apache,您可能会面临稳定性问题,因为任何 php 脚本中的每个故障都会导致该 apache 进程的整个线程池不稳定。同样在这种模式下,所有脚本都代表 apache 用户执行。这不利于安全。mpm-worker 配置需要在线程安全模式下编译 PHP。至少 CentOS 和 RedHat 默认存储库没有线程安全的 PHP 版本,因此在这些操作系统上,您至少需要自己编译 PHP(有一种方法可以在 Apache 上激活 worker mpm)。线程安全的 PHP 二进制文件的使用被认为是实验性的和不稳定的。另外,许多 PHP 扩展不支持线程安全模式,或者没有在线程安全模式下进行良好测试。
---------------- PHP 作为 CGI ----------------
这似乎是最慢的默认配置,它本身似乎是一个“骗局”;)
---------------- PHP 作为 CGI 通过 mod_suphp ----------------
优点:suphp 允许您代表脚本文件所有者执行 php scipts。这样您就可以安全地将同一台机器上的不同站点分开。此外,suphp 允许每个虚拟主机使用不同的 php.ini 文件。
缺点:CGI 模式下的 PHP 意味着较低的性能。在这种模式下,你不能使用像 APC 这样的 php 加速器,因为每次产生新进程来处理脚本时,前一个进程的缓存都没用。顺便说一句,你知道在这个配置中应用一些加速器的方法吗?我听说了一些关于将 shm 用于 …
我有一个 Debian Lenny Web 服务器。它使用 libapache2-mod-suphp 运行 apache2。不幸的是,suphp 无法使用 phpmyadmin,因为 phpmyadmin 安装在 /usr/share/phpmyadmin 中并由 root 拥有,而 suphp 在此目录中禁用了它的引擎:
$ cat /etc/apache2/mods-enabled/suphp.conf
<IfModule mod_suphp.c>
AddType application/x-httpd-php .php .php3 .php4 .php5 .phtml
suPHP_AddHandler application/x-httpd-php
<Directory />
suPHP_Engine on
</Directory>
# By default, disable suPHP for debian packaged web applications as files
# are owned by root and cannot be executed by suPHP because of min_uid.
<Directory /usr/share>
suPHP_Engine off
</Directory>
</IfModule>
Run Code Online (Sandbox Code Playgroud)
是否有可能在使用 suphp 时启用系统 phpmyadmin(可能通过标准 libapache2-mod-php5)?如何?
我知道有四种不同的 PHP 处理程序(AFAIK)。
我需要知道这些处理程序的优缺点以及每个处理程序适合哪些环境?
例如,如果我正在运行共享托管服务器,上述哪个处理程序适合我?或者,如果我正在管理私人服务器?
并且有必要吗?我已经阅读了很多关于它的页面,但我一生都无法真正弄明白,这与 apache 和普通旧 php 已经做的事情相反。
我正在设置一个新服务器,但我怀疑我是使用 SuPhp 还是 mod_ruid2 安装 php/apache。我以前用 SuPHP 遇到过很多麻烦,而且它肯定比 mod_ruid2 慢。但是 mod_ruid2 和 SuPHP 一样安全吗?与使用 SuPHP 相比,使用 mod_ruid2 时是否存在更多安全风险?
换句话说:mod_ruid2 与 SuPHP。谁赢?
我想知道是否有关于如何设置 Apache + SuExec + php-fpm 的好指南?我有一个服务器,我将使用几个单独的网站。所以,我需要 php 作为站点所有者用户运行。如我所见,php-fpm 与 php-fcgi 略有不同。在这种情况下是否需要来自 Apache 的 mod_fcgid?如何设置这一切?
现在我的网站正在运行 Apache + mod_suphp + php-cgi,所以...很好,但有点慢。我想保持安全并获得使用 APC 的能力。