![PythonWeb開發(fā)基礎教程-第2章-Django配置課件_第1頁](http://file4.renrendoc.com/view/7a97b9e6bb5758a50e4f013b09bb33e4/7a97b9e6bb5758a50e4f013b09bb33e41.gif)
![PythonWeb開發(fā)基礎教程-第2章-Django配置課件_第2頁](http://file4.renrendoc.com/view/7a97b9e6bb5758a50e4f013b09bb33e4/7a97b9e6bb5758a50e4f013b09bb33e42.gif)
![PythonWeb開發(fā)基礎教程-第2章-Django配置課件_第3頁](http://file4.renrendoc.com/view/7a97b9e6bb5758a50e4f013b09bb33e4/7a97b9e6bb5758a50e4f013b09bb33e43.gif)
![PythonWeb開發(fā)基礎教程-第2章-Django配置課件_第4頁](http://file4.renrendoc.com/view/7a97b9e6bb5758a50e4f013b09bb33e4/7a97b9e6bb5758a50e4f013b09bb33e44.gif)
![PythonWeb開發(fā)基礎教程-第2章-Django配置課件_第5頁](http://file4.renrendoc.com/view/7a97b9e6bb5758a50e4f013b09bb33e4/7a97b9e6bb5758a50e4f013b09bb33e45.gif)
版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、Python Web開發(fā)基礎教程(Django版)第2章 Django配置本章主要內(nèi)容:Django項目的配置文件在Web服務器中部署項目2.1 Django項目的配置文件Django項目的配置文件為settings.py,在執(zhí)行django-admin startproject命令創(chuàng)建項目時會自動生成該文件本節(jié)主要內(nèi)容基本配置模板配置數(shù)據(jù)庫配置靜態(tài)資源配置2.1.1基本配置settings.py文件的主要代碼:settings.py文件中主要的配置變量說明如下。1BASE_DIRBASE_DIR變量設置項目在系統(tǒng)中的實際路徑。2SECRET_KEYSECRET_KEY變量值是自動生成的一個隨
2、機數(shù),用于重要數(shù)據(jù)的加密處理,如用戶密碼、CSRF機制、Session會話等數(shù)據(jù)的加密。在部署項目時,應妥善保管SECRET_KEY,避免泄密。3DEBUG和ALLOWED_HOSTSDEBUG變量值默認為True,表示項目處于調(diào)試模式,即開發(fā)階段。項目完成進行部署時,應將其設置為False。ALLOWED_HOSTS變量為可訪問項目Web站點的域名,默認為空。當DEBUG變量值為True,且ALLOWED_HOSTS變量值為空時,只允許用localhost或訪問項目Web站點。在部署項目時,DEBUG變量值為False,此時必須設置ALLOWED_HOSTS,否則項目將無法啟動。例如,可設置
3、ALLOWED_HOSTS=*,允許所有域名訪問。4INSTALLED_APPSINSTALLED_APPS變量用于注冊在項目中使用的應用,默認包含了Django內(nèi)置的部分應用。django.contrib.admin:用于網(wǎng)站后臺數(shù)據(jù)管理。django.contrib.auth:用于用戶認證。django.contrib.contenttype:用于管理項目中的應用和模型信息。django.contrib.sessions:用于會話(Session)控制。django.contrib.messages:用于消息框架。django.contrib.staticfiles:用于靜態(tài)文件管理5MI
4、DDLEWAREMIDDLEWARE變量用于注冊在項目中使用的中間件。6ROOT_URLCONFROOT_URLCONF變量設置項目的根URL配置模塊,示例代碼如下。ROOT_URLCONF= myDjango.urls表示使用項目中myDjango文件夾下的urls.py文件作為項目的根URL配置模塊。7TEMPLATESTEMPLATES變量配置項目使用的模板。本書將在第6章詳細講解模板的相關內(nèi)容。8WSGI_APPLICATIONWSGI_APPLICATION變量設置項目運行在WSGI兼容的Web服務器的接口程序。9DATABASESDATABASES變量設置數(shù)據(jù)庫的相關配置。Djan
5、go項目默認使用SQLite數(shù)據(jù)庫。項目啟動后,Django會在項目根目錄中創(chuàng)建一個名為db.sqlite3的數(shù)據(jù)庫。10AUTH_PASSWORD_VALIDATORSAUTH_PASSWORD_VALIDATORS變量設置授權的密碼校驗器。11LANGUAGE_CODELANGUAGE_CODE變量設置項目語言。12TIME_ZONE和USE_TZTIME_ZONE變量設置項目時區(qū)。USE_TZ變量值設置為True時,時區(qū)設置才有效。13USE_I18NUSE_I18N變量值默認為True,表示支持國際化。如果不需要該功能,應將其設置為False。14USE_L10NUSE_L10N變量值
6、默認為True,表示支持格式本地化。2.1.2模板配置在settings.py中,項目默認的模板配置如下。TEMPLATES = BACKEND: django.template.backends.django.DjangoTemplates, DIRS: , APP_DIRS: True, OPTIONS: context_processors: django.template.context_processors.debug, django.template.context_processors.request, django.contrib.auth.context_processors
7、.auth, django.contrib.messages.context_processors.messages,各個選項含義如下。BACKEND:設置處理模板的模板引擎。DIRS:配置模板的搜索路徑。在項目中使用自定義的模板時,需要在此配置模板的搜索路徑。例如,DIRS: os.path.join(BASE_DIR,hello/templates)。APP_DIRS:默認值為True,表示Django默認在項目應用的templates路徑中搜索模板。OPTIONS:設置可選項。其中的context_processors用于設置模板使用的上下文處理器2.1.3數(shù)據(jù)庫配置在settings.
8、py中,項目默認的數(shù)據(jù)庫配置如下。DATABASES = default: ENGINE: django.db.backends.sqlite3, NAME: os.path.join(BASE_DIR, db.sqlite3), 其中,“default”表示項目使用的默認數(shù)據(jù)庫。“ENGINE”選項定義數(shù)據(jù)庫引擎(也稱數(shù)據(jù)庫后端),“django.db.backends.sqlite3”表示使用SQLite3數(shù)據(jù)庫?!癗AME”選項指定SQLite3數(shù)據(jù)庫的磁盤文件名。2.1.4靜態(tài)資源配置Django將CSS文件、JavaScript腳本和圖片等文件視為靜態(tài)資源。在settings.py中
9、,項目默認的靜態(tài)資源URL訪問路徑配置如下。STATIC_URL = /static/其中的“static”作為訪問靜態(tài)資源文件的URL路徑,例如,“:8000/static”。與之對應,應該在Django項目的各個應用中創(chuàng)建一個與STATIC_URL同名的文件夾來存放靜態(tài)資源文件夾。settings.py的INSTALLED_APPS配置默認包含了“django.contrib.staticfiles”,它將用于管理項目中的靜態(tài)文件。2.2 在Web服務器中部署項目本節(jié)主要內(nèi)容常用Web服務器WSGI簡介在IIS中部署Django項目部署包含靜態(tài)資源的Django項目2.2.1常用Web服務
10、器1Apache HTTP ServerApache HTTP Server是Apache軟件基金會推出的開源Web服務器,它是目前應用最廣泛的Web服務器。Apache HTTP Server的特點是簡單、速度快、性能穩(wěn)定、安全可靠,可通過簡單的API進行擴展,并且集成了Perl、Python等語言解釋器。Apache HTTP Server支持UNIX類和Windows操作系統(tǒng),以及Novell NetWare和EBCDIC平臺。2NginxNginx是一款高性能的HTTP和反向代理服務器,也可作為電子郵件服務器。Nginx在高連接并發(fā)的情況下,能夠支持高達5萬個并發(fā)連接數(shù)的響應,而內(nèi)存、
11、CPU等系統(tǒng)資源消耗卻非常低,運行非常穩(wěn)定。Nginx用C語言實現(xiàn),已經(jīng)被移植到許多體系結(jié)構和操作系統(tǒng),包括Linux、FreeBSD、Solaris、Mac OS X、AIX以及Microsoft Windows。3IISIIS(Internet Information Service,互聯(lián)網(wǎng)信息服務)是微軟推出的一款運行于Windows系統(tǒng)的服務器。它包括Web服務器、FTP服務器、NNTP服務器和SMTP服務器,分別用于網(wǎng)頁瀏覽、文件傳輸、新聞服務和郵件發(fā)送等方面。IIS提供ISAPI作為擴展Web服務器功能的編程接口。2.2.2 WSGI簡介WSGI(Python Web Server Gateway Interface)稱為Python Web服務器網(wǎng)關接口。WSGI既不是服務器,也不是用于開發(fā)的API,它只是定義了一種接口。WSGI規(guī)范PEP 333于2003年發(fā)布,并于2010年更新為PEP 3333。PEP 333主要支持Python 2.X,PEP 3333主要支持Python 3.X。引用Python提供的WSGI參考服務器(wsgiref.simple_server)模塊,可快速實現(xiàn)Web服務器2.2.3在IIS中部署Django項目2.2.4部署包含靜態(tài)資源的Django項目settings.py中的“STATIC_URL
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- Ortho-methyl-4-anilino-1-boc-piperidine-生命科學試劑-MCE-9872
- 2025年度網(wǎng)紅電商品牌購銷合同
- 2025年度礦山資源整合與投資合作協(xié)議
- 施工方案對土石方材料的要求與選擇
- 游泳教學與生命安全教育的融合
- 高校突發(fā)公共事件應急預案
- 數(shù)據(jù)中心安全管理措施與緊急情況應對實例分析
- 60條合同規(guī)定:如何實現(xiàn)一次性產(chǎn)品零使用
- 上市公司廣告策劃與執(zhí)行合同范本
- 二手房訂房合同條款解析
- 2025年華能新能源股份有限公司招聘筆試參考題庫含答案解析
- 《中國心力衰竭診斷和治療指南(2024)》解讀完整版
- 《檔案管理課件》課件
- 2023學年完整公開課版家鄉(xiāng)的方言
- 護理質(zhì)量管理課件
- 護理學基礎教案導尿術
- 顱腦外傷(新版)課件
- 《先秦漢魏晉南北朝詩》(精校WORD版)
- 分包商座談會領導致辭
- GB/T 16679-1996信號與連接的代號
- 高三考前押題卷文科綜合地理試卷(解析版)
評論
0/150
提交評論