Windows 10,Python 3.6,Wamp 3.0.6。 我是一個蟒蛇新手,想用燒瓶創建一個測試網站。我知道我可以使用虛擬環境,但我寧願使用運行apache 2.4.23的wamp服務器。要做到這一點,我明白我必須安裝一個mod_wsgi模塊。一個名爲Graham Dumpleton的有用人士已經使這些文件可用,並且根據Windows和Python的版本,您可以下載.whl文件。所以我已經做到了,將其重命名爲zip,解壓縮並在裏面有一堆文件夾和文件。但是,所有apache模塊文件都具有.so擴展名,下載文件中沒有這樣的文件。我想我有我需要的,但有一個過程來安裝我不明白的模塊。任何人都可以解釋我如何做到這一點?如何使用mod_wsgi模塊在wamp中運行flask
回答
你最好自己編譯/安裝mod_wsgi。這些.whl
文件是由第三方(不是我)創建的,我不知道它們是如何構建的。
假設你有你的Apache安裝C:/Apache24
下,並且安裝的Python的版本,您使用的是正確的MS C/C++編譯器,所有你需要做的安裝mod_wsgi的運行:
pip install mod_wsgi
一旦它已安裝,運行:
mod_wsgi-express module-config
複製它輸出的內容並將其添加到您的Apache配置文件中。然後爲您的特定WSGI應用程序配置mod_wsgi。
請注意,建議只使用www.apachelounge.com提供的Apache發行版。其他一些Apache發行版不提供允許您編譯其他Apache模塊所需的頭文件。
哇!沒想到我會得到這個人自己的迴應!非常感謝。
我做到了這一點:
LoadFile "c:/python36/python36.dll"
LoadModule wsgi_module "c:/python36/lib/site-packages/mod_wsgi/server/mod_wsgi.cp36-win_amd64.pyd"
WSGIPythonHome "c:/python36"
,但它不工作。當然,在wamp中,Apache的位置是C:\ wamp \ bin \ apache \ apache2.4.23,我無法更改,所以我應該如何安裝mod_wsgi以獲取帳戶?
迴應格雷厄姆鄧普爾頓的11:56
抱歉缺乏信息。我跑了一些準系統代碼複製/在我的文件app.py從網上粘貼如下:
from flask import Flask
app = Flask(__name__)
@app.route('/')
def index():
return 'Hello World'
if __name__ == "__main__":
app.run()
這被激活,並在本地主機上運行:5000和我的「Hello World」在屏幕上。當我使用wamp通知區域圖標轉到本地主機時,我看到所有本地項目,包括我稱之爲「python-test」的這個項目。我雙擊它,看到它的組成文件,包括app.py.我雙擊app.py,url變成'localhost/python-test/app.py',屏幕顯示'Internal Server Error'與info:'Apache/2.4.23(Win64)PHP/5.6.25 mod_wsgi /4.5.17的Python /本地主機端口80'
Server日誌3.6服務器說:
[Mon Aug 14 18:22:06.218169 2017] [win32:error] [pid 6576:tid 1280] [client 127.0.0.1:50473] AH02102: C:/wamp/www/python-test/app.py is not executable; ensure interpreted scripts have "#!" or "'!" first line, referer: http://localhost/python-test/
[Mon Aug 14 18:22:06.218169 2017] [cgi:error] [pid 6576:tid 1280] (9)Bad file descriptor: [client 127.0.0.1:50473] AH01222: don't know how to spawn child process: C:/wamp/www/python-test/app.py, referer: http://localhost/python-test/
我從你的站點下載文件到點子安裝mod_wsgi的是mod_wsgi的-4.5.17 + ap24vc14-cp36- cp36m-win_amd64.whl
還有什麼可以幫助你嗎?
更多信息:Apache的錯誤日誌週二08月15日17時06分10秒
generating secret for digest authentication ...
[Tue Aug 15 17:06:10.121529 2017] [mpm_winnt:notice] [pid 11008:tid 592] AH00455: Apache/2.4.23 (Win64) PHP/5.6.25 mod_wsgi/4.5.17 Python/3.6 configured -- resuming normal operations
[Tue Aug 15 17:06:10.121529 2017] [mpm_winnt:notice] [pid 11008:tid 592] AH00456: Apache Lounge VC14 Server built: Jul 1 2016 11:43:51
[Tue Aug 15 17:06:10.121529 2017] [core:notice] [pid 11008:tid 592] AH00094: Command line: 'c:\\wamp\\bin\\apache\\apache2.4.23\\bin\\httpd.exe -d C:/wamp/bin/apache/apache2.4.23'
[Tue Aug 15 17:06:10.123535 2017] [mpm_winnt:notice] [pid 11008:tid 592] AH00418: Parent: Created child process 10952
[Tue Aug 15 17:06:10.318641 2017] [auth_digest:notice] [pid 10952:tid 476] AH01757: generating secret for digest authentication ...
[Tue Aug 15 17:06:10.357718 2017] [mpm_winnt:notice] [pid 10952:tid 476] AH00354: Child: Starting 64 worker threads.
- 1. Wamp沒有運行mod_wsgi?
- 2. 如何確保當加載mod_wsgi時,Apache正在運行模塊
- 3. Django/mod_wsgi使用PHP的WAMP
- 4. 初始化使用Apache和mod_wsgi運行的Flask應用程序
- 5. 如何在運行時「使用」模塊
- 6. 如何在Apache和mod_wsgi中使用Flask路由?
- 7. mod_wsgi不適用於WAMP
- 8. Cloud9 Python:在運行動作中找不到Flask模塊
- 9. 看到我試圖讓Flask運行的任何錯誤? (mod_wsgi + virtualenv)
- 10. 用mod_wsgi導入python模塊
- 11. 在mod_wsgi下運行時激活Flask調試器
- 12. 與mod_wsgi的模塊
- 13. 如何在Aptana中運行.py模塊?
- 14. 使用mod_wsgi在apache上運行django webapp
- 15. python flask app mod_wsgi/apache
- 16. 測試在windows/wamp上運行cron作業的magento模塊
- 17. 如何運行XAMPP或WAMP
- 18. 如何使用C#運行PowerShell模塊運行空間
- 19. 如何運行.py模塊?
- 20. 如何在Windows上使用mod_wsgi apache運行python
- 21. 如何使用「make」構建mod_wsgi模塊包?
- 22. 如何使__name__ == '__main__' 運行模塊
- 23. 在同一個Apache服務器上運行mod_wsgi(Flask)應用程序和非mod_wsgi應用程序
- 24. 在windows7中如何配置mod_wsgi與wamp服務器
- 25. 如何測試模塊的運行塊
- 26. 在mod_wsgi下運行CherryPy
- 27. mod_wsgi強制重載模塊
- 28. 導入模塊與mod_wsgi
- 29. 如何在子模塊上運行Sonar?
- 30. 如何運行Python模塊andrewning /在Windows
你的反應不應該作爲一個答案,你應該修改你的問題,並添加新的信息的更新。這些信息應該定義爲「不起作用」,否則你會讓人猜測爲什麼。換句話說,你看到了什麼錯誤? Apache錯誤日誌中有哪些錯誤消息?你是從新的源代碼編譯mod_wsgi,還是運行從''.whl''文件安裝的''mod_wsgi module-config''?總之,提供更多細節。 –
我已經添加了所有我能想到的信息,作爲對之前帖子的修改。還有什麼我可以添加的? – Perkin5
您沒有包含用於配置特定WSGI應用程序的mod_wsgi配置。你是使用''WSGIScriptAlias''還是其他一些配置mod_wsgi的方法?怎麼樣?這個錯誤表明你一直在試圖使用擴展名爲「.py」的WSGI腳本文件,但仍然在Apache配置中設置了「AddHandler cgi-script .py」,導致它作爲CGI程序執行。註釋掉''cgi-script''的''AddHandler'行。 –