网络编程
位置:首页>> 网络编程>> Python编程>> 在Lighttpd服务器中运行Django应用的方法

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

作者:goldensun  发布时间:2021-08-05 20:19:50 

标签:Lighttpd,Django

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主机。

 

0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com