gpt4 book ai didi

linux - 将 Apache 默认页面更改为 PHP

转载 作者:太空宇宙 更新时间:2023-11-04 04:27:39 24 4
gpt4 key购买 nike

我希望在没有索引并收到 500 错误时更改 apaches 默认页面。我的服务器是 Linux Red Hat,使用 Kloxo 和/etc/httpd/conf.d/welcome.conf 设置客户端,我正在尝试更改:

<LocationMatch "^/+$">
Options -Indexes
ErrorDocument 403 /error/noindex.html
</LocationMatch>

<LocationMatch "^/+$">
Options -Indexes
ErrorDocument 403 /error/noindex.php
</LocationMatch>

httpd 重新启动后会出现 500 错误。我认为这与 PHP 权限有关,因为文件是以 root 身份上传的,并且用户特定于某个帐户。

noindex.html 文件工作正常并且也设置为 root。

我知道另一种方法是使用骨架目录,但我不想走这条路。

有人知道我如何实现这一目标吗?

谢谢。

编辑:

我在 suPHP 中遇到错误:脚本“/var/www/error/noindex.php”的UID小于min_uid

如果我将权限更改为 777,我会收到 500 错误页面,日志中仅显示以下消息:文件“/var/www/error/noindex.php”可由其他人写入

编辑2:

将文件设置为 400 或 660,用户 ID 为 501 (lxlabs),我现在收到错误:

文件“/var/www/error/noindex.php”的目标 UID (1060) 和 UID (501) 不匹配

我相信 lxlabs 应该是普通用户,但可能没有该目录的权限。我不确定如何定位/home/kloxo/httpd/error/noindex.php,因为welcome.conf 文件似乎在/var/www 目录中启动。

编辑3:

这也可能有帮助。我能够在虚拟主机声明中设置 suPHP 详细信息。喜欢:

<Virtualhost 123.456.78.90:8888>
SSLEngine On
SSLCertificateFile /home/kloxo/httpd/ssl/eth0___localhost.crt
SSLCertificateKeyFile /home/kloxo/httpd/ssl/eth0___localhost.key
SSLCACertificatefile /home/kloxo/httpd/ssl/eth0___localhost.ca

DocumentRoot /home/kloxo/httpd/webmail/
<Ifmodule mod_suphp.c>
SuPhp_UserGroup lxlabs lxlabs
</Ifmodule>
</Virtualhost>

也许我可以在welcome.conf 文件中执行类似的操作?

最佳答案

解决方案是更改脚本的所有者和权限。 用户必须是普通用户。权限必须为 660(rw 对于用户和组)或 400(r 仅对于用户)。解释如下。

您正在使用 suPHP,它是一个 Apache 模块,它尝试通过以受限权限运行 PHP 脚本来保护它们。当请求脚本时,suPHP 在执行脚本之前切换到脚本的所有者。

出于明显的安全原因,suPHP 禁止以 root 身份运行脚本。因此 root 拥有的 PHP 脚本无法通过 Apache 访问。这就是消息 UID of script is less than min_uid 的含义。 suPHP 确实更通用一些:它禁止所有特殊用户。 Linux 为特殊用户保留第一个用户 ID。普通用户的 ID 大于 500 或 1000(取决于发行版),而 root 用户的 ID 通常为 0。

suPHP 仍然出于安全原因,拒绝运行任何用户可以修改的脚本。这就是消息文件可由其他人写入的含义。可以使用配置参数allow_file_others_writeable来切换此行为,但使用具有不安全配置的面向安全的模块没有多大意义。毕竟,suPHP 的主要目的是分离具有不同文件所有者的应用程序。

关于linux - 将 Apache 默认页面更改为 PHP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7210891/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com