亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python3+django2.0+apache2+ubuntu14怎么部署網站上線

發布時間:2021-06-17 10:01:16 來源:億速云 閱讀:131 作者:小新 欄目:開發技術

小編給大家分享一下Python3+django2.0+apache2+ubuntu14怎么部署網站上線,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!

環境:ubuntu14, django2.0, apache2。

1.首先安裝需要的庫包,在 ubuntu 下執行如下指令,為了能順利安裝建議使用 root 用戶登錄 Ubuntu 或在 apt-get 前加上 sudo :

安裝 Apache2

apt-get update  #獲取更新列表
apt-get install apache2  #安裝 Apache2apt-get install libapache2-mod-wsgi-py3  #讓 Apache2識別 Python 程序的請求,安裝 mod-wsgi模塊

確認安裝的 Apache2 版本號

apachectl -v

Python3+django2.0+apache2+ubuntu14怎么部署網站上線

安裝和配置 Git(這是為了從遠程文檔庫中推送遠程倉庫到本地,如需上線的 Django 項目)

apt-get install git
git config --global user.name 'yourname'
git config --global user.email 'youremail'

安裝 Python 的 pip 組件管理程序和虛擬機環境程序 virtualenv

apt-get install python3-pip
pip3 install virtualenv

2.配置遠程的 Django 項目

Linux 操作系統中的 Apache 網頁服務器一般會把網頁放在 /var/www/html 中,(安裝 Apache2后便生成 /var/www 目錄),所以我們也將 Django 項目放在 /var/www 下。首先在 /var/www 下使用 virtualenv 創建虛擬環境并啟用,然后再使用 git clone 命令推送遠程 Django 項目分支到本地(這里以我自己的倉庫為例https://github.com/weixuqin/myDjango.git),操作如下:

cd /var/www                          #移動到 /var/www 目錄下
virtualenv VENV                       #創建虛擬環境 VENV
source VENV/bin/activate                  #激活虛擬環境 VENV
git clone https://github.com/weixuqin/myDjango.git  #克隆遠程倉庫到本地
cd myDjango/mblog                      #移動到項目目錄
pip install -r requirements.txt              #安裝 requirements.txt文件中的庫包

接下來我們可以使用下列命令來啟動 Django 來訪問看看網站內容是否完整呈現。

python manage.py runserver 0:8000

3.修改settings.py,增加靜態文件等設置

正式上線的網站我們不能通過使用 python manage.py runserver 這樣的方式啟用。應該通過網頁服務器(如 Apache)把遠程瀏覽器的請求轉送到 Django 程序中執行,再把執行后的結果通過 Apache 傳回給瀏覽器。

主要涉及到兩個文件,setting.py 和 wsgi.py。setting.py 負責做 Django 網站的相關設置,而 wsgi.py 負責創建一個可以讓 Apache 順利轉交程序代碼以及返回執行結果的設置文件。

setting.py 中修改如下:

# SECURITY WARNING: keep the secret key used in production secret!
#基于安全考慮,把原有 SECRET_KEYS的內容創建為/etc/secret_key.txt 文件,并使用讀取的方式獲取 SECRET_KEYS 的內容
with open('/etc/secret_key.txt') as f:
  SECRET_KEY = f.read().strip()

# SECURITY WARNING: don't run with debug turned on in production!
DEBUG = False        #關閉 debug 模式,關閉后靜態文件不會自動加載,需指定路徑

ALLOWED_HOSTS = ['*']    #指定允許存取此網站的 IP 地址為'*',表示不做任何限制

然后我們修改 setting.py,讓靜態文件正常加載:

STATIC_URL = '/static/'
STATICFILES_DIRS = [
  os.path.join(BASE_DIR, 'static')    
]
STATC_ROOT = '/var/www/staticfiles'

然后運行

python manage.py collectstatic

將所有STATICFILES_DIRS中所有文件夾中的文件,以及各app中static中的文件都復制到 STATIC_ROOT 指定的文件夾中,把這些文件放到一起是為了用apache等部署的時候更方便。

Linux 對文件權限很敏感,我們還需要修改文件權限讓 Apache2 能夠正確讀取到。

一般目錄權限設置為 755,文件權限設置為 644 。

cd /var/www/myDjango/mblog
sudo chmod -R 644 zqxt
sudo find mblog -type d | xargs chmod 755

4.修改 Apache 中的文件,讓網站上線

創建一個網站的配置文件

sudo vim /etc/apache2/sites-available/sitename.conf

這里以我的配置文件為例,可根據實際需求自行更改

<VirtualHost *:80>
  #添加 wsgi.py 文件路徑和虛擬環境路徑

  WSGIScriptAlias / /var/www/myDjango/mblog/mblog/wsgi.py
  WSGIDaemonProcess mblog python-path=/var/www/myDjango/mblog:/var/www/VENV/lib/python3.4/site-packages
  WSGIProcessGroup mblog
  
  #添加靜態文件路徑

  Alias /static/ /var/www/staticfiles/
  <Directory /var/www/staticfiles>
    Require all granted
  </Directory>
  
  #獲取 wsgi.py 中內容

  <Directory /var/www/myDjango/mblog/mblog>
  <Files wsgi.py>
    Require all granted
  </Files>
  </Directory>
</VirtualHost>

切換到目錄:/etc/apache2/sites-available/ 運行:

sudo service apache2 reload 
sudo a2dissite 000-default && sudo a2ensite sitename.conf
sudo service apache2 restart

接著輸入 服務器 IP 地址,如果成功,你將看到網站顯示正常的內容,后續可以通過將域名解析到服務器等方式來訪問。

我自己的如下:

Python3+django2.0+apache2+ubuntu14怎么部署網站上線

**PS:自己將域名解析到服務器后網站一直報500錯誤,但是自己通過 IP 地址訪問卻一切正常,查找下原因,發現是解析域名到服務器,服務器如果在國內的,需要備案,不然是無法訪問的,而自己恰巧是騰訊云的國內服務器,查找了好久,才發現一直報錯是什么原因(捂臉)。

看完了這篇文章,相信你對“Python3+django2.0+apache2+ubuntu14怎么部署網站上線”有了一定的了解,如果想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

阿尔山市| 隆德县| 鸡西市| 巴青县| 靖宇县| 铁岭市| 治县。| 五河县| 新绛县| 策勒县| 同江市| 子长县| 安达市| 天水市| 齐河县| 资阳市| 大城县| 丹阳市| 弥勒县| 安国市| 舒城县| 江孜县| 金昌市| 榕江县| 区。| 宝坻区| 深泽县| 东光县| 福州市| 崇仁县| 中阳县| 涿鹿县| 青神县| 焦作市| 阜新市| 葵青区| 肥西县| 河曲县| 高唐县| 和政县| 赤壁市|