部署Django到阿里云服務(wù)器教程示例
基于Ubuntu16.04 + Python3 + nginx + mysql + Django
接下來先安裝這些必要的環(huán)境,這些操作都是在你已經(jīng)購買了阿里云服務(wù)器。并且在本地你已經(jīng)搭建好了Django博客?,F(xiàn)在我們所做的就是把本地的環(huán)境在阿里云的服務(wù)器上重新搭一遍。
這里先簡單的說一下阿里云服務(wù)器,我自己買的是云服務(wù)器ESC,需要配置一下安全組規(guī)則,就是端口,按下圖配置即可,最重要的是22和88端口。
然后就是我們的服務(wù)器在實例里,我的是Ubuntu16.04,要部署到阿里云上點擊遠(yuǎn)程連接,第一次點擊會彈出一個密碼,這就是你在阿里云登錄遠(yuǎn)程連接的密碼,一定要記好,就會彈出這一次!
輸入密碼之后就進入了Ubuntu命令行模式,這時候你輸入你的Ubuntu賬號,默認(rèn)root,然后輸入密碼,密碼是你在買服務(wù)器時候就設(shè)置的,成功之后就進入了Ubuntu系統(tǒng),我們整個部署過程都是在這個Ubuntu系統(tǒng)里,命令行下進行。所以需要你多少掌握一些Ubuntu命令行的知識!
整個部署過程我們還是使用到一個重要的軟件Xftp,這個軟件就相當(dāng)于Ubuntu的界面系統(tǒng),我們通過它連接上我們阿里云服務(wù)器的Ubuntu系統(tǒng),連接成功之后就可以直接在本地通過Xftp和阿里云Ubuntu系統(tǒng)傳送文件。
打開Xftp新建會話,然后在主機輸入你的阿里云服務(wù)器公網(wǎng)IP,下面的賬號密碼可以先不輸入,點擊確定后會提示你輸入。
點擊確定后會提示你輸入賬號,賬號就是Ubuntu的默認(rèn)root
然后輸入密碼
點擊確定就進入了Ubuntu系統(tǒng)
這個左面顯示的是你的桌面,右面新建會話顯示的就是阿里云服務(wù)器上Ubuntu系統(tǒng)的目錄結(jié)構(gòu),在這里我們可以直接從左面(你的本地桌面)往右面(阿里云的Ubuntu系統(tǒng))拖拽文件,這個在后面我們部署的時候會非常方便!
一、安裝必要的軟件
1、安裝Django
先安裝pip3:
sudo apt-get update sudo apt-get install pip3
然后安裝Django,這個地方要注意安裝你所使用的Django版本:
pip3 install django2.0
2、安裝nginx
sudo apt-get update sudo apt-get install nginx
安裝完成后。用你電腦的瀏覽器訪問你的服務(wù)器的公網(wǎng)ip地址,看看安裝成功沒有!
3、安裝uwsgi
在你的本地電腦訪問https://uwsgi-docs.readthedocs.io/en/latest/Download.html,下載Stable/LTS版本的源文件。
本地下解壓這個源文件,然后用xftp把文件拖放到阿里云的Ubuntu的家目錄(home)下,使用cd命令進入到該文件夾下,按順序依次輸入下面三條命令:
sudo apt-get install python3-setuptools sudo apt-get install python3-dev sudo python3 setup.py install
4、安裝MySQL(如果使用Django自帶的數(shù)據(jù)庫,跳過這步)
輸入下面安裝命令:
sudo apt-get install mysql-server mysql-client
安裝過程中會出現(xiàn)叫你輸入密碼,這個密碼一定要記??!
安裝完成輸入下面命令:
mysql -u root -p
然后輸入你剛剛設(shè)置的密碼,進去之后輸入下面命令:
create database myblog
創(chuàng)建一個myblog數(shù)據(jù)庫,這個數(shù)據(jù)庫名字跟你將來要還原的數(shù)據(jù)庫名字一樣,用xftp把你在本地備份的sql文件拖到阿里云Ubuntu的家目錄(home)下。
還原數(shù)據(jù)庫;進入家目錄(home),輸入下面命令:
sudo mysql -u root -p myblog<myblog.sql
配置mysql文件:
sudo vim/etc/mysql/mysql.conf.d/mysqld.cnf
然后注釋掉下面這行代碼
# band-address = localhost
二、配置項目
經(jīng)過上面的步驟,如果一切順利你就已經(jīng)把所需要的軟件和環(huán)境搭建好了,接下來我們就開始配置我們的博客項目。
1、配置博客項目
先用xftp把你的整個博客項目拖到家目錄(home)那里,然后開始配置nginx文件:
cd /etc/nginx/sites-available vim default
使用cd命令進入到sites-available文件夾,文件夾下有一個default文件,使用vim打開它,找到default文件下的這段代碼,如果沒有就要添加上去:
server_name 192.168.1.121; location / { # First attempt to serve request as file, then # as directory, then fall back to displaying a 404. # try_files $uri $uri/ =404; include uwsgi_params; uwsgi_pass 127.0.0.1:8000; } location /static { alias /home/feixue/python/www/for_test/static; } location /media { alias /home/ubuntu/blog/media; }
192.168.1.121替換成你自己服務(wù)器公網(wǎng)IP地址;
static 那里也要替換成你自己Django項目的static路徑;
media 同理換成你自己Django項目的media路徑,這是媒體文件的文件夾;
注意:location后面是有空格的,必須要有!alias后面也是有空格的;include上面那句話也是要注釋掉的!
修改成完成后使用 wq 保存退出(vim編輯器知識不懂的百度吧)
再輸入下面命令重啟服務(wù):
sudo service nginx restart
2、配置uwsgi
在博客項目的根目錄下,也就是有manage.py文件的目錄下,新建一個uwsgi.ini文件和一個run.log文件
然后我們使用vim編輯器編輯uwsgi.ini文件:
vim uwsgi.ini
文件打開是空的,我們添加如下代碼:
[uwsgi] chdir = /home/feixue/python/www/for_test module = for_test.wsgi:application socket = 127.0.0.1:8000 master = true daemonize = /home/feixue/pyth/for_test/run.log disable-logging = true
chdir 是你的博客項目的根目錄,我這里的項目名叫for_test;你要替換成你自己的路徑;
moudule 是你的入口wsgi模塊,將for_test替換成你自己的項目名稱;
socket 是通信端口設(shè)置,這個設(shè)置不用改,復(fù)制即可;
master = true 表示以主進程模式運行,不用改,復(fù)制即可;
daemonize 是你的日志文件目錄,這個路徑就是剛剛新建的run.log文件的路徑;
disable-logging = true 表示不記錄正常信息,只記錄錯誤信息,否則你的日志可能很快就爆滿了!
3、配置MySQL(如果使用Django自帶的數(shù)據(jù)庫,這步可以跳過)
修改setting.py 所在目錄的那個 init.py文件使用vim編輯器打開init.py文件輸入一下代碼:
import pymysql pymysql.install_as_MySQLdb()
安裝mysql驅(qū)動:
pip3 install pymysql
4、修改settings.py文件
打開settings.py文件找到下面代碼并修改:
DEBUG = False ALLOWED_HOSTS = ['192.168.178.128']
注意其中的IP地址要替換成你自己阿里云公網(wǎng)的IP。
如果你順利的完成了上面的步驟,那么恭喜你!你可以直接去瀏覽器輸入你的公網(wǎng)IP地址,就可以訪問了!
接下來我還會更新一些在部署中遇到的問題和解決辦法,如果你遇到什么問題歡迎留言!
到此這篇關(guān)于部署Django到阿里云服務(wù)器教程示例的文章就介紹到這了,更多相關(guān)部署Django到阿里云內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- 使用PyCharm配合部署Python的Django框架的配置紀(jì)實
- 利用Pycharm + Django搭建一個簡單Python Web項目的步驟
- 社區(qū)版pycharm創(chuàng)建django項目的方法(pycharm的newproject左側(cè)沒有項目選項)
- Pycharm+django2.2+python3.6+MySQL實現(xiàn)簡單的考試報名系統(tǒng)
- 使用PyCharm創(chuàng)建Django項目及基本配置詳解
- 基于騰訊云服務(wù)器部署微信小程序后臺服務(wù)(Python+Django)
- pycharm部署django項目到云服務(wù)器的詳細(xì)流程
相關(guān)文章
Python?數(shù)據(jù)類型中的字符串和數(shù)字
這篇文章主要介紹了Python?數(shù)據(jù)類型中的字符串和數(shù)字,Python3中有六個標(biāo)準(zhǔn)的數(shù)據(jù)類型,Number、String、List、Tuple、Set、Dictionary,加先來我們就來看看這幾種數(shù)據(jù)類型的具體相關(guān)介紹,需要的小伙伴可以參考一下2022-02-02Python爬蟲采集Tripadvisor數(shù)據(jù)案例實現(xiàn)
這篇文章主要為大家介紹了Python爬蟲采集Tripadvisor數(shù)據(jù)案例實現(xiàn),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-06-06Python被遠(yuǎn)程主機強制關(guān)閉后自動重新運行進程的示例
要實現(xiàn)Python程序在被遠(yuǎn)程主機強制關(guān)閉后能夠自動重新運行,我們可以采用幾種方法,但最直接且常用的方法之一是結(jié)合操作系統(tǒng)級的工具或腳本,這篇文章主要介紹了Python被遠(yuǎn)程主機強制關(guān)閉后怎么自動重新運行進程,需要的朋友可以參考下2024-08-08關(guān)于python中plt.hist參數(shù)的使用詳解
今天小編就為大家分享一篇關(guān)于python中plt.hist參數(shù)的使用詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-11-11Python BeautifulSoup基本用法詳解(通過標(biāo)簽及class定位元素)
這篇文章主要介紹了Python BeautifulSoup基本用法(通過標(biāo)簽及class定位元素),本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-08-08TensorFlow人工智能學(xué)習(xí)創(chuàng)建數(shù)據(jù)實現(xiàn)示例詳解
這篇文章主要為大家介紹了TensorFlow人工智能學(xué)習(xí)創(chuàng)建數(shù)據(jù)實現(xiàn)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步2021-11-11