1. 程式人生 > >Django專案上線---在xshell裡面

Django專案上線---在xshell裡面

1、首先要有伺服器和域名,或者使用別人的二級域名也可以。然後就是在xshell中建立連線。
2、更新一下

[email protected]:~# apt update

3、安裝nginx

apt   install  nginx

4、安裝mysql

#這個安裝過程會彈出一個粉色框框,需要設定一下資料庫密碼
apt  install  mysql-server

5、在線上伺服器安裝虛擬開發環境(pyenv)

$ apt install git
#沒有vim的可以安裝一下,安裝過的不用在安裝
$ apt install vim
#這個安裝完把最後句話複製下來
$ curl -L https://github.com/pyenv/pyenv-installer/raw/master/bin/pyenv-installer | bash

每個人的都不一樣
6、然後進入到 .bashrc檔案中,在最後把剛剛複製的三句話貼上進去,

vim  .bashrc

在這裡插入圖片描述
7、讓配置立即生效

source  .bashrc   #

8、安裝python

 cd  .pyenv   #進入到.pyenv中
 mkdir  cache   #建立檔案cache
 cd  cache     #進入到cache中
 
##  然後下載python壓縮包,3.6.6可以改成你需要下載的python版本
 wget -c http://mirrors.sohu.com/python/3.6.6/Python-3.6.6.tar.xz -P  ~/.pyenv/cache/
## 安裝python 
   pyenv  install  3.6.6  -v
##  然後安裝python所需要的依賴包,這個必須要安裝,安裝會失敗的:
  $ apt-get install libc6-dev gcc
  $ apt-get install -y make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm
###   然後在安裝一下python
     pyenv  install  3.6.6  -v
#.更新pyenv資料庫
   $ pyenv rehash
#列出所安裝的python版本
    $ pyenv versions  

9、建立虛擬環境

#建立專案的虛擬環境
	pyenv  virtualenv  3.6.6  env36
#進入到你的專案目錄下
	cd  /var/www/project/
#切換到虛擬環境
	pyenv  activate  env36

10、在虛擬環境下安裝包

pip  install  django==1.11.16#安裝指定版本的django
pip  install   pymysql   #安裝pymysql
pip  install   pillow   #安裝畫圖軟體

pip freeze   #可以檢視自己安裝的包

其他包你需要什麼都可以安裝,根據自己的需要

11、安裝uwsgi

pip  install   uwsgi
#然後建立一個檔案,名字根據自己喜好來定
vim  uwsgiconf.ini 
### 把以下內容新增進去
 ~~~
   [uwsgi]
   # 外部訪問地址,可以指定多種協議,現在用http便於除錯,之後用socket  #
   socket = 0.0.0.0:8000 # uwsgi的監聽埠
   # 指向專案根目錄
   chdir =  /var/www/online
   # wsgi.py所在位置
   wsgi-file = day09/wsgi.py
   module = day09.wsgi
   # 虛擬開發環境位置
   virtualenv = /root/.pyenv/versions/env36
   ~~~

12、最後配置一下nginx

#進入到該目錄下
	cd  /etc/nginx/sites-available

#建立一個檔案(名字隨意)
	vim  blog
##然後在該檔案下配置一下內容:
~~~
   server {
   	listen 80;
   	server_name  www.srddlv.cn; 這個是自己的域名
   	location / {
   		# 轉發埠必須和uconfig.ini中socket埠一致
   		uwsgi_pass      127.0.0.1:8000; 
             include uwsgi_params; 
   	}
   	# 靜態資源所在位置
   	location /static {
   		alias /var/www/online/static/;
   	}
   }
   ~~~
   
#進入到/etc/nginx/sites-ennable目錄下   建立軟連線 (blog是在sites-available建立的檔名  你們建立的什麼這裡就寫什麼)
	ln -s  ../sites-available/blog  blog 
	
##  最後重啟一下nginx
	service nginx restart

最後回到 /var/www/專案名/

cd  /var/www/project/  

 #最後執行伺服器 
 uwsgi  uwsgiconf.ini  

然後在遊覽器上輸入自己的域名就可以啦: