在Lighttpd服务器中运行Django应用的方法

yipeiwu_com6年前服务器

lighttpd (http://www.djangoproject.com/r/lighttpd/) 是一个轻量级的Web服务器,通常被用来提供静态页面的访问。 它天生支持FastCGI,因此除非你的站点需要一些Apache特有的特性,否则,lighttpd对于静态和动态页面来说都是理想的选择。

确保 mod_fastcgi 在模块列表中,它需要出现在 mod_rewrite 和 mod_access ,但是要在 mod_accesslog 之前。

将下面的内容添加到你的lighttpd的配置文件中:

server.document-root = "/home/user/public_html"
fastcgi.server = (
 "/mysite.fcgi" => (
  "main" => (
   # Use host / port instead of socket for TCP fastcgi
   # "host" => "127.0.0.1",
   # "port" => 3033,
   "socket" => "/home/user/mysite.sock",
   "check-local" => "disable",
  )
 ),
)
alias.url = (
 "/media/" => "/home/user/django/contrib/admin/media/",
)

url.rewrite-once = (
 "^(/media.*)$" => "$1",
 "^/favicon\.ico$" => "/media/favicon.ico",
 "^(/.*)$" => "/mysite.fcgi$1",
)

在一个lighttpd进程中运行多个Django站点

lighttpd允许你使用条件配置来为每个站点分别提供设置。 为了支持FastCGI的多站点,只需要在FastCGI的配置文件中,为每个站点分别建立条件配置项:

# If the hostname is 'www.example1.com'...
$HTTP["host"] == "www.example1.com" {
 server.document-root = "/foo/site1"
 fastcgi.server = (
  ...
 )
 ...
}

# If the hostname is 'www.example2.com'...
$HTTP["host"] == "www.example2.com" {
 server.document-root = "/foo/site2"
 fastcgi.server = (
  ...
 )
 ...
}

你也可以通过 fastcgi.server 中指定多个入口,在同一个站点上实现多个Django安装。 请为每一个安装指定一个FastCGI主机。

 

相关文章

【不二】关于affiliate和niche站运营的6条建议

【不二】关于affiliate和niche站运营的6条建议

今天圈友@不二  来给大家分享一些affiliate和英文niche站的的入门玩法,给新手做个科普。 niche,中文一般翻译为利基,可以理解成长尾细分市场,这些细分领域一般来说,市场...

在阿里云服务器上配置CentOS+Nginx+Python+Flask环境

项目运行环境 阿里云(单核CPU, 1G内存, Ubuntu 14.04 x64 带宽1Mbps), 具体购买和ssh连接阿里云本文不做描述。 实用工具 首先进入阿里云后先要升级下apt...

利用python 更新ssh 远程代码 操作远程服务器的实现代码

用python paramiko ssh 服务器,并pull对应目录代码的脚本 pull.py import paramiko import sys def sshclient_e...

Python 获取ftp服务器文件时间的方法

Python 获取ftp服务器文件时间的方法

这个问题在网上找了很长时间,也没有很好的解决方案,大多数都是用的 ftp.retrlines('LIST',处理函数) 来获得文件的时间但是格式是 所以很难做成时间戳,获取时间的...

Python实现基于多线程、多用户的FTP服务器与客户端功能完整实例

本文实例讲述了Python实现基于多线程、多用户的FTP服务器与客户端功能。分享给大家供大家参考,具体如下: 项目介绍: 1. 用户加密认证 2. 允许同时多用户登录 3. 每个用户有自...