Django專案上線---在xshell裡面
阿新 • • 發佈:2018-12-22
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
然後在遊覽器上輸入自己的域名就可以啦: