Nginx搭建負載均衡解決方案

目錄

1.安裝nginx

2.查看版本

3.查看運行狀態

4.驗證啓動

5.相關目錄說明

7.部署django服務

9.遇到的錯誤記錄

參考文獻


Nginx非常好用,做靜態文件解析、反向代理、負載均衡都非常的簡單易用。今天記錄下在ubuntu16.04上使用nginx給django項目搭建負載均衡的解決方案。

1.安裝nginx

輸入命令:apt install nginx

 

2.查看版本

輸入命令:nginx –v

3.查看運行狀態

輸入命令:sudo systemctl status nginx

默認安裝成功後,nginx就正常啓動了,如果未啓動,可以通過以下命令啓動nginx

service nginx start 
#或者
systemctl restart nginx

4.驗證啓動

在瀏覽器中輸入:http://127.0.0.1,顯示如下則說明成功

 

 

5.相關目錄說明

  1. /usr/sbin/nginx   主程序
  2. /etc/nginx  存放配置文件
  3. /etc/share/nginx  存放靜態文件
  4. /var/log/nginx 存放日誌的目錄

6.修改配置文件

命令行切換到/etc/nginx目錄,修改nginx.conf,在http{}中新增如下內容:      

upstream python.server.com{
        server 127.0.0.1:8001 weight=10;
        server 127.0.0.1:8002 weight=10;
        server 127.0.0.1:8003 weight=10;
    }

       server{
           listen        8006;
           server_name   127.0.0.1;
           location / {
              proxy_pass http://python.server.com;
              root  html;
              index index.html index.htm; 
           }

            error_page 500 502 503 504 /50x.html;
            location = /50x.html{
              root html;
           }
       }

新增後的文件截圖如下所示:

注意:

(1) 每一行的空格一定是通過空格鍵敲出來,不能用tab鍵,不然啓動會報錯(2)

(2) 在使用vi命令的時候,如果出現點擊方向鍵顯示A 或者B,且backspace按鍵不管用的情況,可以卸載vim,重新全量安裝,相關命令如下:

卸載vim-tiny:

sudo apt-get remove vim-common

安裝vim ful:

sudo apt-get install vim

7.部署django服務

將單一項目拷貝,複製爲三個文件夾,如下:

通過命令行分別啓動這三個項目,啓動項目的命令相同,但是每個項目使用的端口不同:

python manage.py runserver 127.0.0.1:8001
python manage.py runserver 127.0.0.1:8002
python manage.py runserver 127.0.0.1:8003

8.驗證負載均衡

三個項目的view.py中都有一個默認的index接口方法,我們直接在瀏覽器中輸入:http://1270.0.1:8006/index/,然後不停刷新,會發現方法會自動在三個服務中的index方法切換。

至此通過nginx做負載均衡的方案搭建完畢。

 

9.遇到的錯誤記錄

有時候可能會出現以下錯誤信息:

報的是域名不符合規範,出現這個問題的主要原因有以下幾種可能:

1nginxnginx.conf的配置有問題

upstream和proxy_pass 後面要使用正確的域名格式,只需要格式正確即可,即:你不能出現下劃線這樣的。

2python服務的ALLOWED_HOSTS

如果已經正確配置了域名格式,但是還是有這個問題,那就配置下項目中的setting.py文件的ALLOWED_HOSTS,修改ALLOWED_HOSTS=[] 爲ALLOWED_HOSTS=[‘*’]。或者按照上述的設置修改爲ALLOWED_HOSTS=[‘python.server.com’] ,然後重啓python服務即可。

參考文獻

【1】ubuntu下 vi按方向鍵會變成ABCD的修改方法

【2】django - 使用nginx部署時出現 DisallowedHost at /

【3】Nginx負載均衡的詳細配置及使用案例詳解【4】ubuntu安裝nginx

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章