Ubuntu16.04下部署Django項目
將Django項目部署到ubuntu上,並可以通過外網進行訪問。
首先,需要的環境有ubuntu(我的是16.04)
apache2(sudo apt-get install apache2),配置稍後解釋
wsgi模塊(sudo apt-get install libapache2-mod-wsgi)連接Django項目
1)先介紹一下apache的配置,等待安裝完成後,cd 進入/etc/apache2目錄下面。
目錄中有一個apache2.conf文件,vi編輯該文件。
寫上ServerName localhost
然後在文件中寫上:
WSGIScriptAlias /var/www/mylove/wsgi.py
WSGIPythonPath /var/www/mylove
<Directory /var/www/mylove>
<Files wsgi.py>
Require all granted
</Files>
</Directory>
這裏的mylove就是我的項目文件夾,其中/var/www是apache項目文件存放的路徑,即DocumentRoot,這一個屬性是在/etc/apache2/sites-available下面的000-default文件中進行設置的,可以自行設置路徑。
wsgi.py文件在項目創建的時候就已經生成,可以將它拷貝到指定的目錄中,上面的路徑對應好。
注意一點:在配置WSGIScriptAlias的時候,啓動apache可能會報錯,原因是隻是安裝了wsgi模塊,並沒有在apache中導入該模塊,執行命令:a2enmod wsgi進行引入。
此時,重啓apache,/etc/init.d/apache2 restart
2)剛開始按上apache時候,運行127.0.0.1出現成功界面,在部署django文件後,再次運行可能出現 /access 訪問權限的一個錯誤,頁面顯示Forbidden!
這是由於conf配置的一個問題,將deny from all 去掉(我的配置過程沒有遇到)
3)重啓apache。別的終端輸入網址即可訪問。
在研究vim的過程中,發現了一個命令,叫做:saveas,當使用vim打開一個文件,但忘記使用sudo,最後發現無權限保存時,可以調用saveas命令將該文件另存到有權限的地方。 之後,再將該文件拷貝回來。比分割線前的方法簡單很多。