首頁 後端開發 Python教學 Ubuntu14.04的部署實例介紹

Ubuntu14.04的部署實例介紹

Jul 23, 2017 pm 01:37 PM
django 部署

第一步。

sudo apt-get update

sudo apt-get upgrade

先更新。 。

Django的主流部署方式:nginx+uwsgi+django

第二步,安裝nginx

sudo apt-get install nginx

#安裝nginx,如果需要安裝最新的nginx需從官網下載原始碼包手動編譯。

nginx的大致檔案結構。

1.設定檔:/etc/nginx

2.程式:/usr/sbin/nginx

3.日誌:/var/log/nginx/access. log - error.log

 

第三步,安裝uwsgi

sudo apt-get install python3-dev

sudo apt-get install python3- pip

sudo pip3 install uwsgi(此步驟之前,可以換下pip來源以提高下載速度。在~/.pip下建立pip.conf寫入

[global]

trusted-host = pypi.douban.com

index-url = )

 

  uwsgi是一個web伺服器,它實現了WSGI協定、uwsgi、http等協議。 Nginx中HttpUwsgiModule的作用是與uWSGI伺服器進行交換。

  大致流程是 : 客戶端<==>nginx<==>uwsgi<==>Django。靜態請求由Nginx自己處理。非靜態請求透過uwsgi傳遞給Django,由Django來處理,從而完成一次WEB請求。

 

建立Django測試項目,django-admin startproject mysite,cd mysite,python manage.py startapp demo1。

 

 

 

第四步,測試uwsgi

在mysite目錄下新測試檔案,nano test.py.

寫入:

def application(env, start_response):
    start_response('200 OK', [('Content-Type','text/html')])return ["Hello World"]
登入後複製

執行:

uwsgi --http :8001 --plugin python --wsgi-file test.py
登入後複製

訪問正常。

 

第五步,測試Django

python manage.py runserver 0.0.0.0:8002
登入後複製

存取正常。

 

連接Django和uwsgi。

uwsgi --http:8001 --plugin python --module mysite.wsgi
登入後複製

存取正常。

 

第六步,設定uwsgi

uwsgi支援透過多種設定檔形式啟動,這裡採用ini設定檔的方法.

 

新uwsgi:nano uwsgi.ini

 

# mysite_uwsgi.ini file[uwsgi]

    socket = 127.0.0.1:3400# Django-related settings
    # the django project directory (full path)
    chdir           = /home/ubuntu/mysite
    # Django's wsgi filemodule          = mysite.wsgi

    # process-related settings
    # master
    master          = true# maximum number of worker processes
    processes       = 2threads = 2max-requests = 6000# ... with appropriate permissions - may be neededchmod-socket    = 664# clear environment on exit
    vacuum          = true
登入後複製

 

 

##訪問時報錯誤,

invalid request block size: <span class="hljs-built_in">21573 (<span class="hljs-number">max <span class="hljs-built_in">4096)...skip<span class="hljs-number"></span></span></span></span>。

原因是url位址超過4096個字符,原因是我們是用socket的方式啟動,將設定檔的socket改為http即可,或是修改buffer-size。

(建議不做修改,測試時改為http即可,等連接nginx時,改回socket)

daemonize = /home/ubuntu/mysite/uwsgi.log
登入後複製
正式運行時將這句程式碼加入uwsgi.ini檔案中,存取日誌就會後台輸出到uwsgi.log

此時django已經能存取。

 

 

第七步,設定nginx

修改nginx的預設設定檔/etc/nginx/sites-enabled/default

server {
    # the port your site will be served on
    listen      80;
    # the domain name it will serve forserver_name 127.0.0.1; # substitute your machine's IP address or FQDNcharset     utf-8;

    # max upload size
    client_max_body_size 75M;   # adjust to taste

    # Django media
    location /media  {
        alias /home/ubuntu/mysite/media;  # your Django project's media files - amend as required    }

    location /static {
        alias /home/ubuntu/mysite/static; # your Django project's static files - amend as required    }

    # Finally, send all non-media requests to the Django server.
    location / {
        include     uwsgi_params; # the uwsgi_params file you installed
        uwsgi_pass 127.0.0.1:8001;#此处跟uwsgi配置文件保持一致
    }
}
登入後複製
記得修改測試時的uwsgi.ini的設定。

第八步,執行

重啟nginx,執行uwsgi.

大功告成

 暫時到此,後續繼續補充nginx、django、uwsgi的知識。

大多配置來自百度搜索,就不一一貼各個出處了。人生苦短。

 

以上是Ubuntu14.04的部署實例介紹的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

Django vs. Flask:Python Web框架的比較分析 Django vs. Flask:Python Web框架的比較分析 Jan 19, 2024 am 08:36 AM

Django和Flask都是PythonWeb框架中的佼佼者,它們都有著自己的優點和適用場景。本文將對這兩個框架進行比較分析,並提供具體的程式碼範例。開發簡介Django是一個全功能的Web框架,它的主要目的是為了快速開發複雜的Web應用。 Django提供了許多內建的功能,例如ORM(物件關聯映射)、表單、認證、管理後台等。這些功能使得Django在處理大型

Django框架的優點和缺點:您需要知道的一切 Django框架的優點和缺點:您需要知道的一切 Jan 19, 2024 am 09:09 AM

Django是一個完整的開發框架,該框架涵蓋了Web開發生命週期的各個方面。目前,這個框架是全球最受歡迎的Web框架之一。如果你打算使用Django來建立自己的Web應用程序,那麼你需要了解Django框架的優點和缺點。以下是您需要知道的一切,包括具體程式碼範例。 Django優點:1.快速開發-Djang可以快速開發Web應用程式。它提供了豐富的庫和內

如何升級Django版本:步驟與注意事項 如何升級Django版本:步驟與注意事項 Jan 19, 2024 am 10:16 AM

如何升級Django版本:步驟和注意事項,需要具體程式碼範例引言:Django是一個功能強大的PythonWeb框架,它持續地進行更新和升級,以提供更好的效能和更多的功能。然而,對於使用較舊版Django的開發者來說,升級Django可能會面臨一些挑戰。本文將介紹如何升級Django版本的步驟和注意事項,並提供具體的程式碼範例。一、備份項目檔案在升級Djan

解決Tomcat部署war包後無法存取的問題的方法 解決Tomcat部署war包後無法存取的問題的方法 Jan 13, 2024 pm 12:07 PM

如何解決Tomcat部署war包後無法成功存取的困擾,需要具體程式碼範例Tomcat作為一個廣泛使用的JavaWeb伺服器,允許開發人員將自己開發的網路應用程式打包為war檔進行部署。然而,有時我們可能會遇到部署war包後無法成功存取的問題,這可能是由於配置不正確或其他原因引起的。在本文中,我們將提供一些解決這個困擾的具體程式碼範例。一、檢查Tomcat服務

Yolov10:詳解、部署、應用一站式齊全! Yolov10:詳解、部署、應用一站式齊全! Jun 07, 2024 pm 12:05 PM

一、前言在过去的几年里,YOLOs由于其在计算成本和检测性能之间的有效平衡,已成为实时目标检测领域的主导范式。研究人员探索了YOLO的架构设计、优化目标、数据扩充策略等,取得了显著进展。同时,依赖非极大值抑制(NMS)进行后处理阻碍了YOLO的端到端部署,并对推理延迟产生不利影响。在YOLOs中,各种组件的设计缺乏全面彻底的检查,导致显著的计算冗余,限制了模型的能力。它提供了次优的效率,以及相对大的性能改进潜力。在这项工作中,目标是从后处理和模型架构两个方面进一步提高YOLO的性能效率边界。为此

Flask應用的Gunicorn部署指南 Flask應用的Gunicorn部署指南 Jan 17, 2024 am 08:13 AM

如何使用Gunicorn部署Flask應用程式? Flask是一個輕量級的PythonWeb框架,被廣泛應用於開發各種類型的Web應用。而Gunicorn(GreenUnicorn)是一個基於Python的HTTP伺服器,用於運行WSGI(WebServerGatewayInterface)應用程式。本文將介紹如何使用Gunicorn部署Flask應用,並附

Django是前端還是後端?一探究竟! Django是前端還是後端?一探究竟! Jan 19, 2024 am 08:37 AM

Django是一個由Python編寫的web應用框架,它強調快速開發和乾淨方法。儘管Django是web框架,但要回答Django是前端還是後端這個問題,需要深入理解前後端的概念。前端是指使用者直接和互動的介面,後端是指伺服器端的程序,他們透過HTTP協定進行資料的互動。在前端和後端分離的情況下,前後端程式可以獨立開發,分別實現業務邏輯和互動效果,資料的交

如何使用 PHP 部署和維護網站 如何使用 PHP 部署和維護網站 May 03, 2024 am 08:54 AM

要成功部署和維護PHP網站,需要執行以下步驟:選擇Web伺服器(如Apache或Nginx)安裝PHP建立資料庫並連接PHP上傳程式碼到伺服器設定網域名稱和DNS監控網站維護步驟包括更新PHP和Web伺服器、備份網站、監控錯誤日誌和更新內容。

See all articles