<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
採用IIS伺服器部署相比django提供的開發者伺服器具有更好的並行存取能力,效能更加穩定。
python web專案的部署的基本原理,是基於一種WSGI的框架協定。
WSGI協定主要包括Web伺服器和應用伺服器兩部分。
(1)Web伺服器:即HTTP伺服器,按照HTTP接受使用者HTTP請求並提供並行存取,呼叫Web應用處理業務邏輯。
(2)Python Web應用:應用程式接受由伺服器轉發的request,處理對應的請求,並將處理結果返回伺服器。
本文章採用IIS+Django的方式構建和部署Web專案。
(1)cmd終端輸入:
pip freeze>requirements.txt //蒐集python依賴包及對應版本號,生成txt檔案
(2)在需要部署專案的伺服器上安裝依賴包(pip)
pip install -r requirements.txt //檔案requirements.txt為上一步cmd命令中生成
這是我自己的python依賴包:(依自己需求安裝依賴包)
開啟windows的“控制面板”→“程式和功能”→“開啟或關閉Windows功能”,找到Internet Information Services(Internet 資訊服務),按照下圖進行勾選。
我將自己web應用存取埠設定為了8001埠,設定步驟如下。
(1)開啟windows的“控制面板”→“系統和安全”→“Windows Defender防火牆”,單機進入防火牆設定介面。然後介面左側進入高階設定。
(2)進入高階安全Windows Defender防火牆設定介面,選中左側“入站規則”欄目,在選中右側操作欄的“新建規則”選項。彈出的嚮導中選擇“埠(o)”。
(3)點選下一步,輸入自己要設的埠號(我設定的8001),然後一直點下一步,命名規則,完成。就可以在入站規則看到這個規則。
(4)在瀏覽器地址輸入localhost存取IIS測試,如果出現以下頁面,表示安裝成功
(先放資料夾,需要注意的有,在專案根目錄和static資料夾中各有一個web.config檔案。)
第四部分正文開始:
(1)安裝python依賴包wfastcgi,並啟動(需管理員許可權)
pip install wfastcgi
//啟動wfastcgi,, 停止命令為:wfastcgi-disable wfastcgi-enable
輸出:“python路徑” 和 “wfastcgi直譯器核心指令碼路徑”,用"|"隔開
已經在設定提交路徑“MACHINE/WEBROOT/APPHOST”向“MACHINE/WEBROOT/APPHOST”的“system.webServer/fastCgi”節應用了設定更改
"d:python395python.exe|d:python395libsite-packageswfastcgi.py" can now be used as a FastCGI script processor
(2)設定web.config檔案
為了能夠讓IIS伺服器準確的執行專案,需要設定和設定一些引數,包括專案路徑、組態檔路徑、解析器等。在django專案檔案中建立web.config檔案(和manage.py在同一資料夾)。
<?xml version="1.0" encoding="UTF-8"?> <configuration> <system.webServer> <handlers> <add name="Python FastCGI" path="*" verb="*" modules="FastCgiModule" scriptProcessor="d:python395python.exe|d:python395libsite-packageswfastcgi.py" resourceType="Unspecified" requireAccess="Script"/> </handlers> </system.webServer> <appSettings> <add key="WSGI_HANDLER" value="django.core.wsgi.get_wsgi_application()" /> <add key="PYTHONPATH" value="C:UsersyangzDesktopZC_System-V20.6_11-09ZC_System-V20.6" /> <add key="DJANGO_SETTINGS_MODULE" value="ZC_System.settings" /> </appSettings> </configuration>
有三個引數需要注意:
1、scriptProcessor中冒號部分為前面對應的Python和wfastcgi直譯器核心指令碼路徑。
2、<add key="PYTHONPATH" value="C:UsersyangzDesktopZC_System-V20.6_11-09ZC_System-V20.6" />, (這裡跟manage.py同一目錄)
3、<add key="DJANGO_SETTINGS_MODULE" value="ZC_System.settings" />,這個.settings檔案一開始我設定的時候也沒有,可以自己設定。沒有該檔案的同學可以參考下面連結自行設定。
(3)靜態檔案檔案遷移
1、進入到static資料夾中建立第二個個web.config檔案。該檔案用於將專案所有的靜態資原始檔css,js,img等全部匯入到根目錄下的static資料夾。方便伺服器查詢靜態檔案
<?xml version="1.0" encoding="UTF-8"?> <configuration> <system.webServer> <!-- this configuration overrides the FastCGI handler to let IIS serve the static files --> <handlers> <remove name="Python FastCGI"/> </handlers> </system.webServer> </configuration>
2、開啟專案組態檔setting.py
將語句“STATICFILES_DIRS = [os.path.join(BASE_DIR, 'static')]”替換為 “STATIC_BOOT = os.path.join(BASE_DIR, 'static')”。
//原語句註釋掉 # STATICFILES_DIRS = [os.path.join(BASE_DIR, 'static')] //現語句 STATIC_BOOT = os.path.join(BASE_DIR, 'static')
cmd終端進入django專案根目錄:執行命令
python manage.py collectstatic
(4)IIS建立網站
“控制面板”→“系統和安全”→“管理工具”→“Internet Information Services (IIS)管理器”,開啟後左側上方選中網站欄目,右鍵選擇新增網站進入設定。
此時設定完成:存取http://127.0.0.1:8001即可進入web應用。
(1)[Errno 13] Permission denied: 'C:\Users\yangz\Desktop\ZC_System-V20.6_11-09\ZC_System-V20.6\templates\ShouYe\Login.html'
解決方法:找到django專案資料夾,右鍵屬性,選擇安全,編輯使用者和組,新增使用者“Everyone”並選擇完全控制。選擇應用。
(2)如果在根目錄中沒有****.settings問件,會彈出缺少MODULE,
到此這篇關於windows系統IIS部署Django專案的實踐的文章就介紹到這了,更多相關IIS部署Django專案內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45