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

如何在Lighttpd环境下部署Django项目?

基于Lighttpd部署Django子域名的方案建议

核心选型:优先用uWSGI + mod_scgi

uWSGI原生支持SCGI协议,和Lighttpd的mod_scgi适配性拉满,配置直接无额外转换层,完全匹配你轻量化部署的需求。相比之下,Gunicorn默认不支持SCGI,得靠第三方工具(比如flup)转协议,反而多了一层依赖,徒增复杂度,不推荐。

具体部署步骤

1. 安装uWSGI

在Python环境里装好uWSGI:

pip install uwsgi

2. 配置uWSGI以SCGI模式运行

创建uWSGI配置文件(比如django_scgi.ini),把Django项目和SCGI监听端口绑定:

[uwsgi]
# Django项目根目录
chdir = /path/to/your/django/project
# 指定Django的WSGI入口模块
module = your_project.wsgi:application
# 本地SCGI监听端口(别暴露到公网)
socket = 127.0.0.1:9000
# 进程数,根据服务器CPU核数调整
processes = 2
# 每个进程的线程数
threads = 2
# 后台运行并输出日志
daemonize = /var/log/uwsgi/django_scgi.log
# 给socket设置合理权限
chmod-socket = 664

启动uWSGI:

uwsgi --ini django_scgi.ini

3. 配置Lighttpd的子域名与SCGI转发

编辑Lighttpd配置文件(比如/etc/lighttpd/lighttpd.conf或单独的子域名配置文件),启用mod_scgi并设置路由规则:

# 启用mod_scgi模块
server.modules += ( "mod_scgi" )

# 子域名匹配规则
$HTTP["host"] == "sub.yourdomain.com" {
    # 静态文件直接由Lighttpd处理,减轻后端压力
    alias.url += (
        "/static/" => "/path/to/your/django/project/static/",
        "/media/" => "/path/to/your/django/project/media/"
    )

    # 动态请求转发到uWSGI的SCGI服务
    scgi.server = (
        "/" => (
            "django_scgi" => (
                "host" => "127.0.0.1",
                "port" => 9000,
                "check-local" => "disable"
            )
        )
    )
}

4. 验证与重启服务

重启Lighttpd生效:

systemctl restart lighttpd

访问子域名,检查动态页面、静态资源是否正常加载。

备选方案:Gunicorn + flup(不推荐)

如果非要用Gunicorn,得装flup做WSGI转SCGI的适配:

pip install gunicorn flup

启动命令:

gunicorn your_project.wsgi:application -w 2 -b 127.0.0.1:9000 --worker-class=flup.server.scgi.WSGIServer

后续Lighttpd的SCGI配置和uWSGI方案一致,但多了一层依赖,稳定性和性能不如直接用uWSGI。

关键注意事项

  • 先执行Django的静态文件收集命令,把静态资源集中到指定目录:
python manage.py collectstatic
  • 给uWSGI日志目录创建权限,避免启动失败:
mkdir -p /var/log/uwsgi && chown www-data:www-data /var/log/uwsgi
  • 可以配置systemd服务管理uWSGI,确保服务器重启后自动启动。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.03 12:55:22