1.首先需要一個可以連接你服務器的軟件這里需要兩個:一個是傳文件的(FileZilla),另外一個是和服務器連接,給服務器安裝環境用(Xshell)和(putty)都可以
實現第一步拉取文件
1.首先連接FileZilla,連接后會出現下圖樣式(這里我使用的服務器是阿里雲的,系統是Ubuntu)。這里說明一下,連接好后你進入var目錄下,此時里面的文件里可能沒有一個叫www的文件,這時你可以先創建一個。創建完成后你把你的項目包放到www文件下。
2.你拉取的項目里不包含你做項目時的數據庫,所以你在這里也可以順便數據庫也打包拉進去。反正剛開始我也不會拉,所以這里我也演示一下,嘿嘿!順便把Xshell的連接也說了。
這里的用戶名是你在虛擬機(阿里雲服務器用戶名默認root,IP用的服務器給你的公有IP)設置的,密碼是你自己設置的密碼。
成功后是這樣的
進入你的終端執行
mysqldump -uroot -p blog(這里是你的數據庫名,blog是我的)> blog(這個名字你可以隨便起).sql
然后把你的數據庫導出的包放到下圖所示位置
開始第二步,配置環境
1.更新軟件列表(不更新可能裝不上東西)
apt update
2.安裝常用軟件
apt install nginx apt install mysql-server #安裝過程會彈出一個輸入密碼的框,這是你進入數據庫的密碼 apt install git apt install vim
3.安裝虛擬開發環境pyenv
curl -L https://github.com/pyenv/pyenv-installer/raw/master/bin/pyenv-installer | bash
這個虛擬環境裝完后在最后會出來三句話,每個人的路徑都不同
然后輸入命令進入 .bashrc 進去后把剛復制的三句話放置到文件最后,wq保存退出后執行命令讓它生效,此時就可以生效
vim .bashrc
source .bashrc
接着命令
cd .pyenv #進入這個文件 mkdir cache #創建cache文件 cd cache/ #進入此目錄
這時需要安裝python
#在安裝python之前,我們必須要安裝python所需要的依賴包,這個必須要安裝,安裝會失敗的: sudo apt-get install libc6-dev gcc sudo apt-get install -y make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm #安裝python包,版本可自選,這里我用3.6.6 wget -c http://mirrors.sohu.com/python/3.6.6/Python-3.6.6.tar.xz -P ~/.pyenv/cache/ #做安裝 pyenv install 3.6.6 -v #更新pyenv數據庫 pyenv rehash #列出所安裝的python版本 pyenv versions #切換python版本 pyenv global 3.6.6 #6.驗證版本 python
成功后進入你的項目里創建虛擬開發環境(如果你想切出虛擬環境,可執行pyenv deactivate env3.6.6)
cd /var/www cd blog #進入你自己項目 接着創建一個自己的虛擬環境。用法如下:pyenv virtualenv python版本號 虛擬環境名 pyenv virtualenv 3.6.6 env3.6.6 #注意版本號必須是已經安裝的,否則會報錯 切換到你創建的虛擬環境 pyenv activate env3.6.6 pip freeze #利用pip安裝,但是版本需要升級,按照提示升級
繼續,利用pip進行安裝,安裝你需要的安裝包Django,pymysql,pillow,django-tinymce(這個是富文本)
pip install django==1.11.16 pip install pymysql pip install pillow ..... pip freeze #再次查看你安裝的包和版本號
最后在安裝一個
pip install uwsgi
vim uwsgiconf.ini
進去后把下方的配置文件放到里面
[uwsgi] # 外部訪問地址,可以指定多種協議,現在用http便於調試,之后用socket # socket = 0.0.0.0:8000 # uwsgi的監聽端口 # 指向項目根目錄 chdir = /var/www/blog # wsgi.py所在位置 wsgi-file = blog(項目目錄)/wsgi.py module = blog(你的項目).wsgi # 虛擬開發環境位置(一定要改成你自己的虛擬環境目錄) virtualenv = /root/python/.pyenv/versions/env3.6.6 #plugins = python master = true # 處理器數 processes = 1 # 線程數 threads = 2
最后再配置一下nginx。最后的blog是自己創建的一個文件名
vim /etc/nginx/sites-available/blog
進去后把配置也寫下,配置如下,轉換網址在這里http://www.cnkuai.cn/zhuanma.asp?act=save
server { listen 80; server_name www.bly.我愛你; #這里寫自己的域名,如果后面訪問不出效果,只出一個(歡迎來到nginx界面)。那可能與你的域名有關(反正我的域名是中文后綴,沒解析出來),所以這時你可以把你中文域名放置到網上轉換一下,再放到這里就可以了。 location / { # 轉發端口必須和uwsgiconf.ini中socket端口一致 uwsgi_pass 127.0.0.1:8000; include uwsgi_params; uwsgi_param UWSGI_SCRIPT blog.wsgi; # 項目的根目錄 uwsgi_param UWSGI_CHDIR /var/www/blog; } # 靜態資源所在位置 location /static { alias /var/www/blog/static/; } }
配置完成后,進入剛剛的位置配置一個軟連接(切記下面的blog,是一個軟件界名字,中間有個空格)
cd /etc/nginx/ cd sites-enabled/ ln -s ../sites-available/blog blog ll #查看結果里沒有報紅顏色,就成功
service nginx restart
最后再到你的項目目錄下啟動uwsgi
cd /var/www/blog/ ps -aux | grep uwsgi #查看uwsgi是否起來,如果起來了,把他禁掉 uwsgi uwsgiconf.ini
如果是和下面的一樣,那你就成功了。
如果提示您的端口被占用
netstat -anp
kill -9 PID(這里是進程)
然后,訪問你的域名。