You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

修改Apache与php-fpm启动用户后访问index.php报503错误求助

修改Apache与PHP-FPM启动用户后出现503错误的排查方案

问题背景

修改Apache和PHP-FPM的启动用户为apps:appsgrp后,访问index.php出现503 Service Unavailable错误,Apache日志存在权限相关报错。

环境信息

  • 操作系统:Amazon Linux 2023
  • SELinux状态:Enforcing
  • Apache版本:2.4.8
  • PHP版本:8.2
  • 自定义启动用户/组:apps/appsgrp
  • 网站根目录:/var/local/app,所有者为apps:appsgrp

已做配置修改

1. Apache配置(/etc/httpd/conf/httpd.conf)

仅修改User和Group字段为apps、appsgrp,完整配置如下:

ServerRoot "/etc/httpd"
Listen 8443
Include conf.modules.d/*.conf

User apps
Group appsgrp

ServerAdmin root@localhost

<Directory />
    AllowOverride none
    Require all denied
</Directory>

DocumentRoot "/var/local/app/httpd/html"


<Directory "/var/local/app/httpd">
    AllowOverride None
    Require all granted
</Directory>

<Directory "/var/local/app/httpd/html">
    Options Indexes FollowSymLinks
    AllowOverride None
    Require all granted
</Directory>


<IfModule dir_module>
    DirectoryIndex index.html
</IfModule>

<Files ".ht*">
    Require all denied
</Files>

ErrorLog "logs/error_log"


LogLevel warn

<IfModule log_config_module>
    LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
    LogFormat "%h %l %u %t \"%r\" %>s %b" common

    <IfModule logio_module>
      LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combinedio
    </IfModule>

    CustomLog "logs/access_log" combined
</IfModule>

<IfModule alias_module>
    ScriptAlias /cgi-bin/ "/var/local/app/httpd/cgi-bin/"
</IfModule>


<Directory "/var/local/app/httpd/cgi-bin">
    AllowOverride None
    Options None
    Require all granted
</Directory>

<IfModule mime_module>
    TypesConfig /etc/mime.types
    AddType application/x-compress .Z
    AddType application/x-gzip .gz .tgz
    AddType text/html .shtml
    AddOutputFilter INCLUDES .shtml
</IfModule>

AddDefaultCharset UTF-8

<IfModule mime_magic_module>
    MIMEMagicFile conf/magic
</IfModule>
EnableSendfile on
IncludeOptional conf.d/*.conf

2. PHP-FPM配置(/etc/php-fpm.d/www.conf)

仅修改user和group字段为apps、appsgrp,配置片段如下:

user apps
group appsgrp

错误现象

访问index.php返回503 Service Unavailable,Apache错误日志核心报错:

[proxy:error] [pid xxxx] (13)Permission denied: AH00957: HTTP: attempt to connect to 127.0.0.1:9000 (127.0.0.1) failed
[proxy_fcgi:error] [pid xxxx] AH01079: failed to make connection to backend: 127.0.0.1

排查与解决步骤

1. 检查PHP-FPM服务状态与权限

先确认PHP-FPM是否正常启动,是否存在目录权限问题:

# 查看PHP-FPM运行状态
systemctl status php-fpm

# 查看PHP-FPM错误日志
cat /var/log/php-fpm/error.log
  • 若PHP-FPM启动失败,大概率是apps用户无权访问其运行/日志目录,执行以下命令修复:
chown -R apps:appsgrp /var/run/php-fpm/
chown -R apps:appsgrp /var/log/php-fpm/

2. 修复SELinux规则(核心排查点)

由于SELinux处于Enforcing状态,这是最常见的权限阻塞原因:

(1)为apps用户配置正确的SELinux域

# 查看当前用户SELinux域
id -Z apps

# 若域不是unconfined_u,执行以下命令添加
semanage login -a -s unconfined_u apps

(2)允许Apache访问PHP-FPM端口

# 为9000端口添加HTTP服务标签
semanage port -a -t http_port_t -p tcp 9000
  • 若使用Unix Socket而非TCP端口,需修正Socket文件的SELinux上下文:
chcon -t httpd_sys_rw_content_t /var/run/php-fpm/www.sock

(3)修正网站目录的SELinux上下文

# 标记网站目录为HTTP可访问内容
chcon -R -t httpd_sys_content_t /var/local/app/httpd/html

# 若网站有上传/写入需求,添加可写标签
chcon -R -t httpd_sys_rw_content_t /var/local/app/httpd/html/upload  # 替换为实际写入目录

(4)临时验证SELinux影响

若不确定是否为SELinux问题,可临时切换为Permissive模式测试:

setenforce 0

若此时访问正常,说明是SELinux规则问题,修复后恢复Enforcing:

setenforce 1

3. 检查Apache代理配置与模块

确认Apache已正确配置PHP-FPM代理并加载必要模块:

# 检查是否加载proxy与proxy_fcgi模块
httpd -M | grep -E "proxy|proxy_fcgi"
  • 若未加载,添加模块配置:
echo "LoadModule proxy_module modules/mod_proxy.so" >> /etc/httpd/conf.modules.d/00-proxy.conf
echo "LoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so" >> /etc/httpd/conf.modules.d/00-proxy.conf
  • 确保conf.d/php.conf中代理配置正确:
<FilesMatch \.php$>
    SetHandler "proxy:fcgi://127.0.0.1:9000"
</FilesMatch>

4. 修复目录权限递归性

确保网站目录所有子文件/目录都继承apps:appsgrp权限:

chown -R apps:appsgrp /var/local/app/
chmod -R 755 /var/local/app/httpd/html  # 保证目录可执行、文件可读取

5. 重启服务验证

完成所有修改后,重启Apache与PHP-FPM:

systemctl restart httpd php-fpm

再次访问index.php验证是否恢复正常。


内容的提问来源于stack exchange,提问作者Junhong

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.28 15:47:18