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

如何在cPanel上正确配置Django应用以替换原有WordPress站点

问题成因与解决方法

静态文件缺失的原因及修复

  1. Django静态文件配置未生效
    • 检查settings.py中的STATIC_URL是否设为'/static/',STATIC_ROOT是否指向cPanel中部署的静态文件实际路径(比如/home/yourusername/public_html/static)。
    • 确保已执行python manage.py collectstatic命令,将所有静态文件收集到STATIC_ROOT指定的目录。
  2. Apache权限或路径映射问题
    • 确认STATIC_ROOT目录的权限为755,文件权限为644,保证Apache能读取这些文件。
    • 检查cPanel中主域名的文档根目录设置,确保静态文件目录在Apache的访问范围内。
  3. .htaccess规则干扰
    • 旧WordPress的.htaccess规则可能会重写静态文件请求,需在规则中添加例外:
      RewriteCond %{REQUEST_URI} !^/static/
      
      放在WordPress原RewriteRule之前,避免静态请求被重定向。

页面跳转旧WordPress 404的原因及修复

  1. .htaccess规则冲突
    • 直接替换主域名根目录下的.htaccess为Django所需的WSGI规则,覆盖旧WordPress规则:
      RewriteEngine On
      RewriteCond %{REQUEST_FILENAME} !-f
      RewriteCond %{REQUEST_FILENAME} !-d
      RewriteRule ^(.*)$ wsgi.py/$1 [L]
      
    • 注意:如果使用cPanel的Python应用管理器部署,可能需要保留管理器自动生成的规则,只需删除WordPress相关的Rewrite规则即可。
  2. 文档根目录未切换
    • 确认cPanel中主域名的文档根目录已从WordPress的public_html(或子目录)切换到Django应用的根目录(包含wsgi.py的目录)。
  3. 缓存残留
    • 清理浏览器缓存,同时在cPanel中清除服务器缓存(如OPcache、Cloudflare缓存等),避免旧规则或页面被缓存。

额外检查项

  • 重启cPanel中的Django应用,确保配置变更生效。
  • 确认主域名的DNS解析已完全生效,没有指向旧站点的残留记录。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.12 22:35:39