1. 程式人生 > >windows下Nginx+tornado部署Django

windows下Nginx+tornado部署Django

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:\PythonProject\django_web;
            if ($query_string) {
                expires max;
            }
        }
        location ^~ /media/ {
            root D:\PythonProject\django_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:\PythonProject\django\web\Scripts\activate.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

 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檔案也位於根目錄下。

相關推薦

windowsNginx+tornado部署Django

1.下載Nginx,配置nginx.conf worker_processes 1; events { worker_connections 1024; } http { upstream frontends { server 127.0

Windows使用Python3、Django和Apache部署網站

Windows下進行與Python相關的開發實在是有諸多坑。但另一方面,到了Win10,Windows的易用性和穩定性已經達到了一個相當的高度,再加上豐富的軟體生態。對我來說,Windows現在就是一

Windowswar包部署到LinuxTomcat出現的問題

width es2017 文件的 ls -l chm 可能 發的 問題解決 wan 最近,將Windows下開發的war包部署到Linux下的Tomcat時報了一個錯誤:tomcat error in opening zip file。按理說,如果正常,當把war包復制到w

WindowsNginx與tomcat組合簡單使用

org 轉載 服務 ima 重啟 3.2 ati 如果 點擊 本文轉載自: http://www.cnblogs.com/naaoveGIS/ 1.背景 項目中瓦片資源越來越多,如果提高瓦片的訪問效率是一個需要解決的問題。這裏,我們考慮使用Nginx來代理靜態資源進行初步解

windowsnginx配置報錯GetFileAttributesEx

cnblogs req oot rect ear app windows 外文 127.0.0.1 因為電腦屏幕出現亮點,拿去換屏了,所以使用了windows環境,安裝了下wlmp環境 在配置Nginx的時候,發現配置沒有問題,但是老是訪問不了。 2015/0

WindowsNginx+Web.py+FastCGI服務搭建

clu bsp info ast 文件 什麽是 官網 啟動服務 sel 在搭建之前,有必要了解下什麽是fastcgi,但鑒於我自己也不大了解,這裏就不搬門弄斧了,請參考各種百科和官網資料. 1.資源下載 python下載地址:戳這裏webpy下載地址:戳這裏flup下載

windowsnginx的安裝及使用方法入門

訪問 是否 啟動 遇到 clas 自帶 .org spa pos nginx功能之一可以啟動一個本地服務器,通過配置server_name和root目錄等來訪問目標文件 一. 下載 http://nginx.org/ 下載後解壓 二. 修改配置文件 nginx配置

windowsnginx代理ftp服務器

重新 nginx lis cnblogs ftp服務器 ons eth onf blog 我所在的開發環境裏,nginx和ftp在同一臺服務器。 ftp根目錄: nginx的配置: 在nginx.conf中加入: server {

結合Nginx+Uwsgi部署Django項目

stat enable sed 能力 資料 ioerror 直接 water djang 大致想法以及背景: 剛開始創建Django項目,可以通過runserver命令更方便地調試程序,但是如果當一個項目完成了之後,需要部署到真正的環境,就需要考慮其穩定性。之前在寫畢設的

windowsnginx配置報錯GetFileAttributesEx - JohnnyWei - 部落格園

因為電腦螢幕出現亮點,拿去換屏了,所以使用了windows環境,安裝了下wlmp環境 在配置Nginx的時候,發現配置沒有問題,但是老是訪問不了。 2015/08/24 15:03:59 [crit] 4560#3796: *222 GetFileAttributesEx() "d:\wwwroot

windowsnginx配置報錯GetFileAttributesEx - JohnnyWei - 博客園

ttr name The dir 情況 windows 環境 電腦 主機 因為電腦屏幕出現亮點,拿去換屏了,所以使用了windows環境,安裝了下wlmp環境 在配置Nginx的時候,發現配置沒有問題,但是老是訪問不了。 2015/08/24 15:03:59 [crit

windowsnginx訪問web目錄提示403 Forbidden

在windows下 http伺服器nginx時,訪問web目錄提示403 Forbidden,首先需要了解nginx出現403錯誤是什麼意思: 403 Forbidden表示你在請求一個資原始檔但是nginx不允許你檢視,403 Forbidden 只是一個HTTP狀態碼,像404,200一

Nginx+Uwsgi部署Django專案

一、uwsgi介紹 uWSGI是一個Web伺服器,它實現了WSGI協議、uwsgi、http等協議。Nginx中HttpUwsgiModule的作用是與uWSGI伺服器進行交換。 1、 WSGI / uwsgi / uWSGI WSGI是一種Web伺服器閘道器介面。它是一個Web伺服

Windowsnginx+tomcat實現簡單的負載均衡

Nginx是一款輕量級的Web 伺服器/反向代理伺服器及電子郵件(IMAP/POP3)代理伺服器。反向代理(Reverse Proxy)方式是指以代理伺服器來接受internet上的連線請求,然後將請求轉發給內部網路上的伺服器,並將從服務 器上得到的結果返回給internet上請求連線的客戶端,此時代理伺服器

WindowsNginx啟動

使用環境:windows 10       Nginx版本: nginx/1.14.0     啟動Nginx的方法: 1.進入Nginx資料夾,開啟PowerSheel 2.輸入:start nginx  

windowsnginx的簡單使用

在網上是可以查得到關於nginx的一些使用,每次要用的時候都會去查一下別人的用法。既然自己用到的頻率會比較高,那何不自己做個小小的筆記呢。 我使用的是windows版nginx-1.14.0,版本對命令和配置方面無多大影響,以下是我的小小筆記: 一、命令 1、啟動nginx start nginx

windows安裝tornado

Windows下使用pip install tornado 沒有安裝成功,查了一下原因:Tornado官方沒有提供配置支援,但是也可以執行起來,不過僅僅推薦在開發中使用。 1、需要下載tornado安裝包  地址:https://download.csdn.net/download

WindowsNginx+Tomcat群集

Nginx Nginx是一款輕量級的Web 伺服器/反向代理伺服器及電子郵件(IMAP/POP3)代理伺服器,並在一個BSD-like 協議下發行。其特點是佔有記憶體少,併發能力強,事實上nginx的併發能力確實在同類型的網頁伺服器中表現較好,中國大陸使用nginx網站使用者

Windowsnginx作為靜態資源伺服器使用

一、Nginx下載與安裝 1、nginx官方下載地址:http://nginx.org/ 2、下載完後將壓縮包解壓即可 3、nginx配置檔案為根目錄下conf\nginx.conf 二、Nginx常用命令說明 cmd進入nginx安裝目錄 tasklist /fi "imagename e

WindowsNginx的啟動、停止等命令

在Windows下使用Nginx,我們需要掌握一些基本的操作命令,比如:啟動、停止Nginx服務,重新載入Nginx等,下面我就進行一些簡單的介紹。 1、啟動: C:\server\nginx-1.0.2>start nginx或 C:\server\nginx-1.0