国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術(shù)文章
文章詳情頁

Nginx+Uwsgi+Django 項目部署到服務(wù)器的思路詳解

瀏覽:3日期:2024-10-09 08:39:33

首先先說一下思路:

1.本地django項目打包 主要用到的是 python自帶的distutils.core 下的 setup,具體代碼在下面,主要講的兩個問題是package主要打包為和目錄同級的代碼,例如:TCMS如果還有一個子文件夾,那就不能自動打包了。這個時候需要用到data_files。glob(*filename)文件名模式匹配,不用遍歷整個目錄判斷每個文件是不是符合。

from distutils.core import setupimport globsetup( name = 'demo', version = '0.1', packages = [’author_zxx’,’TCMS’,’static’], data_files= glob.glob(’templates/*.html’) )

2.打包用到的木塊,也就是python的庫,pip freeze >> requirement.txt (requirement.txt 問文件名,隨便起)

pip freeze > requeirement.txt

3.服務(wù)器安裝虛擬環(huán)境(非常重要,這一步一定要在開始。)

yum install virtualenvyum install cirtualenvwrapper

4.創(chuàng)建虛擬環(huán)境 并且 指定虛擬換 用到的python 解釋器版本

# 創(chuàng)建一個項目目錄cd my_project# 創(chuàng)建虛擬環(huán)境 my_project_env 為虛擬環(huán)境的名稱virtualenv my_project_env# 指定虛擬環(huán)境所用到的python解釋器版本 -p后面為python解釋器存放的路徑, my_project_env 為虛擬環(huán)境的名稱virtualenv -p /usr/bin/python2.7 my_project_env# 創(chuàng)建完成虛擬環(huán)境之后會生成一個文件夾,之后在bin文件夾中會有一個activate,我們在使用虛擬環(huán)境需要激活虛擬環(huán)境,source activate。source my_project_env/bin/activate#退出虛擬環(huán)境deactivate

5.在虛擬環(huán)境中安裝django 和 uwsgi 。要指定安裝版本和開發(fā)環(huán)境要一樣

pip install django==3.0.4pip install uwsgi

6.創(chuàng)建django中的項目

# . 表示在當(dāng)前目錄下創(chuàng)建,如果不加,會在project_name 下創(chuàng)建一個同名的目錄。django-admin startproject ’project_name’ .

7. 將項目通過FileZilla 或者其他交互軟件,傳入到剛剛所創(chuàng)建的目錄中。

8.項目上傳完畢之后,需要安裝我們所需要的包。

# 剛剛 pip freeze > requirement.txt 所得pip install -r requirement.txt

9.完成之后,可以通過 python manage.pu runserver 進(jìn)行測試,是否成功。顯示出下面得內(nèi)容,即為成功。

May 08, 2020 - 10:53:33Django version 3.0.4, using settings ’TsmWeb.settings’Starting development server at http://127.0.0.1:8000/Quit the server with CTRL-BREAK.

10.之后我們需要安裝uwsgi替我們代替 python manage.py runserver. 因為在生產(chǎn)環(huán)境中我們不可能一直手動得去開啟服務(wù)器,這個時候就需要uwsgi,剛剛已經(jīng)安裝過uwsgi。我們在服務(wù)器項目目錄下創(chuàng)建一個test.py 文件。

# test.pydef application(env, start_response): start_response(’200 OK’, [(’Content-Type’,’text/html’)]) return 'Hello World'

11. 之后在linux 命令行輸入

uwsgi --http :8001 --wsgi-file /‘路徑,從跟開始’/test.py

如果出現(xiàn)下面得代碼,則表示成功:

*** Starting uWSGI 2.0.18 (64bit) on [Fri May 8 11:00:36 2020] ***compiled with version: 4.8.5 20150623 (Red Hat 4.8.5-39) on 07 May 2020 02:26:03os: Linux-3.10.0-1127.el7.x86_64 #1 SMP Tue Mar 31 23:36:51 UTC 2020

12.之后我們需要安裝Nginx

yum install -y pcre pcre-develyum install -y zlib zlib-develyum install gcc-c++yum install -y openssl openssl-develwget -c https://nginx.org/download/nginx-1.14.0.tar.gztar -zxvf nginx-1.14.0.tar.gzcd nginx-1.14.0./configuremakemake install

13.之后測試nginx是否可以正常使用,我們需要進(jìn)到nginx文件下得sbin/ 目錄,運行 ./nginx ,之后在瀏覽器訪問我們地址即可。如果出現(xiàn) Welcome to Nginx! 即表示成功

14.現(xiàn)在是nginx和uwsgi配置,這個也是最頭疼的。

# uwsgi 官網(wǎng)https://uwsgi-docs.readthedocs.io/en/latest/# nginx主要問題在 nginx.conf,下面附上詳解https://www.jb51.net/article/131362.htm

總結(jié)

到此這篇關(guān)于Nginx+Uwsgi+Django 項目部署到服務(wù)器的文章就介紹到這了,更多相關(guān)nginx uwsgi django 項目部署內(nèi)容請搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: Django
相關(guān)文章:
主站蜘蛛池模板: 抚顺县| 应城市| 安康市| 达拉特旗| 嘉鱼县| 隆尧县| 湄潭县| 梁平县| 玉环县| 剑河县| 夏津县| 秦安县| 寿宁县| 广河县| 正宁县| 玉山县| 临夏县| 峨山| 衡东县| 绵竹市| 上虞市| 罗田县| 霍山县| 乾安县| 赤峰市| 鄂伦春自治旗| 调兵山市| 东乡县| 巢湖市| 河曲县| 崇左市| 鄂州市| 凌源市| 九寨沟县| 长丰县| 遂溪县| 邛崃市| 城固县| 化隆| 彭阳县| 铁岭县|