概述
1.下载Nginx,配置nginx.conf
worker_processes 1;
events {
worker_connections 1024;
}
http {
upstream frontends {
server 127.0.0.1:8000;
server 127.0.0.1:8001;
server 127.0.0.1:8002;
server 127.0.0.1:8003;
}
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
server {
listen 80;
server_name localhost;
location ^~ /static/ {
root D:PythonProjectdjango_web;
if ($query_string) {
expires max;
}
}
location ^~ /media/ {
root D:PythonProjectdjango_web;
if ($query_string) {
expires max;
}
}
location = /favicon.ico {
rewrite (.*) /static/favicon.ico;
}
location = /robots.txt {
rewrite (.*) /static/robots.txt;
}
location / {
proxy_pass_header Server;
proxy_set_header Host $http_host;
proxy_redirect off;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Scheme $scheme;
proxy_pass http://frontends;
}
}
}
2.运行nginx.exe启动程序
3.下载tornado 我是在虚拟python环境下装的,激活虚拟环境(写了个激活批脚本activate.vbs)
set objShell=wscript.createObject("wscript.shell")
objShell.Run("cmd.exe /k D:PythonProjectdjangowebScriptsactivate.bat")
4.为虚拟环境安装tornado ,本人采用下载包安装所以命令为
python setup.py install
5.写tornado配置放在项目根目录下 (serv.py)
#/usr/bin/env python
from tornado.options import options, define, parse_command_line
from django.core.wsgi import get_wsgi_application
import tornado.httpserver
import tornado.ioloop
import tornado.web
import tornado.wsgi
import os, sys
SITE_ROOT = os.path.dirname(os.getcwd())
PROJECT_NAME = os.path.basename(os.getcwd())
sys.path.append( SITE_ROOT )
os.environ['DJANGO_SETTINGS_MODULE'] = PROJECT_NAME + '.settings'
define('port', type=int, default=8080)
def main():
tornado.options.parse_command_line()
wsgi_app = tornado.wsgi.WSGIContainer(
get_wsgi_application())
tornado_app = tornado.web.Application(
[
('.*', tornado.web.FallbackHandler, dict(fallback=wsgi_app)),
])
server = tornado.httpserver.HTTPServer(tornado_app)
server.listen(options.port)
tornado.ioloop.IOLoop.instance().start()
if __name__ == '__main__':
main()
6.激活的环境下运行tornado服务
python serv.py --port=8000
python serv.py --port=8001
python serv.py --port=8002
python serv.py --port=8003
7.好了,现在可以输入http://127.0.0.1访问网站了。
8、以上网站已经能够正常运行了,但本人较懒,且不喜欢cmd黑色窗口,因此借助hidecmd.exe实现一键后台启动
主运行bat代码
for /l %%i in (8000,1,8003) do (start hidecmd.exe run.bat %%i)
run.bat代码
python serv.py --port=%1
前提是hidecmd.exe文件也位于根目录下。
最后
以上就是危机哈密瓜为你收集整理的windows下Nginx+tornado部署Django的全部内容,希望文章能够帮你解决windows下Nginx+tornado部署Django所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复