今天有在VPS上跑Python程序的需求,由于之前已经安装了ngnix作为Web Server,所以尝试了一次在ngnix中配置django站点,参考了其他人的一些做法,再结合自己的情况,配置起来并不复杂。
运行环境:Ubuntu9.04
若还没有安装ngnix,则:
apt-get install vim apt-get install nginx
安装django和flup:
apt-get install python-django python-flup
修改nginx的配置文件:
vim /etc/nginx/sites-available/default
在配置文件中加入以下内容:
server {
listen 202.248.185.66;
access_log /var/log/nginx/django.log;
location / {
# host and port to fastcgi server
fastcgi_pass 127.0.0.1:8000;
fastcgi_param PATH_INFO $fastcgi_script_name;
fastcgi_param REQUEST_METHOD $request_method;
fastcgi_param QUERY_STRING $query_string;
fastcgi_param CONTENT_TYPE $content_type;
fastcgi_param CONTENT_LENGTH $content_length;
fastcgi_pass_header Authorization;
fastcgi_param REMOTE_ADDR $remote_addr;
fastcgi_param SERVER_PROTOCOL $server_protocol;
fastcgi_param SERVER_PORT $server_port;
fastcgi_param SERVER_NAME $server_name;
fastcgi_intercept_errors off;
}
}
其中,202.248.185.66是主机的IP,127.0.0.1:8000是后续需要启动的fastcgi进程所使用的内部IP和端口。
上传django程序到相应的目录,以“/usr/DjangoSite/mysite”为例。
启动nginx:
/etc/init.d/nginx start
以fastcgi启动django:
python /usr/DjangoSite/mysite/manage.py runfcgi host=127.0.0.1 port=8000
此处的127.0.0.1和8000与nginx配置文件中的相对应。
至此,在浏览器中输入VPS的IP,就能访问到django的站点了。
--End--


