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

Redhat AWS EC2配置Apache mod_wsgi部署Django出现504网关超时

解决方案

  • 清理重复加载的wsgi模块配置
    你在httpd.conf末尾手动添加了LoadModule wsgi_module modules/mod_wsgi.so,而python3-mod_wsgi安装后会自动在conf.modules.d/目录下生成模块加载配置,两行重复导致了启动警告。删除httpd.conf末尾手动添加的那行LoadModule配置即可。

  • 修正WSGI进程的python路径配置
    虚拟主机配置里的WSGIDaemonProcess行的python-path参数设置错误,当前配置指向了/var/www/public_html/main/,应该调整为项目根目录/var/www/public_html,这样Python才能正确识别main模块,修改后为:

WSGIDaemonProcess main  python-path=/var/www/public_html  python-home=/var/www/public_html/venv
  • 补充public_html目录权限配置
    在你的虚拟主机配置中添加/var/www/public_html目录的访问规则,避免权限拦截:
<Directory /var/www/public_html>
    Require all granted
    Options FollowSymLinks
    AllowOverride None
</Directory>
  • 调整项目目录权限
    确认apache用户对项目目录和虚拟环境有读取执行权限,执行以下命令:
sudo chown -R apache:apache /var/www/public_html
sudo chmod -R 755 /var/www/public_html
  • 开放SELinux权限(Redhat系统必做)
    Redhat默认启用的SELinux会拦截httpd对自定义站点目录的访问,执行以下命令开放权限:
sudo setsebool -P httpd_use_cgi on
sudo setsebool -P httpd_can_network_connect on
sudo semanage fcontext -a -t httpd_sys_rw_content_t "/var/www/public_html(/.*)?"
sudo restorecon -Rv /var/www/public_html
  • 重启服务生效
    所有配置修改完成后重启httpd服务:
sudo systemctl restart httpd

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 02:18:01