0

我在 stackoverflow 上看到过其他关于此的帖子,但对于任何问题都没有可靠的答案。所以我结合了我从其他帖子中收集的知识并重新措辞以希望得到一个可靠的答案。suPHP 是一个 mod,它使得当 apache 运行脚本时,它作为所述脚本的各自所有者运行它们(根据我的理解),以及其他东西。所以我的问题是我将一个 magento 多站点移到了一个新服务器上,而该服务器在尝试访问多站点时给了我奇怪的错误,例如权限错误。它说我无法访问这些文件,因为文件的所有权不同于试图读取/运行它们的用户。除了那个问题,在修复了正确用户拥有的符号链接之后,

仅供参考,我得到的错误是典型的:

Internal Server Error

The server encountered an internal error or misconfiguration and was unable to complete your request.
Please contact the server administrator, webmaster@xxx.com and inform them of the time the error occurred, and anything you might have done that may have caused the error.
More information about this error may be available in the server error log.
Additionally, a 500 Internal Server Error error was encountered while trying to use an ErrorDocument to handle the request.

我看到了一些暗示这根本无法修复的信息。但是,除此之外,我看到另一个页面暗示它可以用 apache 指令 RewriteMap prg 修复。如果可以通过这种方式修复,有人可以指导我如何做到这一点吗?如果这是一个失败的原因,请有人告诉我。我已经在这件事上浪费了很多时间,我不能再浪费了。另外,如果有我错过的解决方案,请告诉我。多谢你们

4

1 回答 1

0

正确,如果您有两个站点试图以不同的用户身份运行,但在启用 SuPHP 的公共目录中共享相同的代码库或部分,它将无法工作。SuPHP 基本上确保文件夹与所有者匹配。在 cPanel 的论坛上有一篇关于它的好帖子:http ://forums.cpanel.net/f5/suphp-symbolic-links-reseller-account-212102.html#post873521

更新; 由于您具有 root 访问权限并控制服务器上的所有站点,因此您可以如上所述禁用 SuPHP。如果您拥有并积极管理所有站点,我个人认为 SuPHP 并没有真正的好处。SuPHP 的目的基本上是通过限制用户帐户可以访问的位置来限制某人在访问您的任何一个 PHP 站点时可以执行的操作。

请记住,通过禁用它,如果您确实存在安全漏洞,攻击者通常会搜索每个可写目录并将 JS 恶意软件和 PHP 后门 shell 等内容注入您的服务器。这意味着损害可能会更广泛。

使用像 mod_security 这样好的 Web 应用程序防火墙很好,而且更值得 IMO。它可以检查 POST/GET 请求以进行 SQL 注入等。您可以自定义规则,但它有一个学习曲线。基本上它固定在 Apache 上。

于 2014-01-13T21:33:11.127 回答