Windows 10、Python 3.6、Wamp 3.0.6。 私はPythonの初心者で、フラスコを使ってテストウェブサイトを作りたいと思っています。私は仮想環境を使うことができると知っていますが、私はむしろApache 2.4.23を実行しているWAMPサーバーを使用したいと思います。これを行うには、mod_wsgiモジュールをインストールする必要があることを理解しています。 Graham Dumpletonという有益な人がファイルを利用できるようにしました.WindowsとPythonのバージョンによって、.whlファイルをダウンロードできます。だから私はこれをやって、名前を変更して解凍し、フォルダとファイルを内部に入れて解凍しました。しかし、すべてのapacheモジュールファイルの拡張子は.soであり、そのようなダウンロードファイルはありません。私は必要なものは持っていると思うが、私が理解していないモジュールをインストールするプロセスがある。どのように私はこれを行うことができます誰も説明できますか?mod_wsgiモジュールでwampのフラスコを運ぶ方法
答えて
自分でmod_wsgiをコンパイル/インストールする方がよいです。それらの.whl
ファイルは第三者(私ではない)によって作成されており、どのように構築されているのかわかりません。
あなたがmod_wsgiをインストールするために必要なすべてが実行され、あなたがC:/Apache24
の下であなたのApacheのインストールを持っているし、正しいMS C/C++コンパイラは、使用しているのPythonのバージョン用にインストールされていると仮定:一度
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をインストールすればよいですか?情報の欠如についてグラハムDumpletonの11時56
申し訳へ
レスポンス。
from flask import Flask
app = Flask(__name__)
@app.route('/')
def index():
return 'Hello World'
if __name__ == "__main__":
app.run()
これが活性化され、ローカルホスト上で実行されている:私は次のように私のファイルapp.pyでオンラインから貼り付けいくつかのベアボーンコードのコピーを/実行している5000を、私は画面上に「Hello Worldの」を持っています。 wamp通知エリアのアイコンを使ってlocalhostに行くと、私はこれを含め、私が 'python-test'と呼ぶすべてのローカルプロジェクトを見ることができます。私はそれをダブルクリックし、app.pyを含む構成ファイルを参照してください。 app.pyをダブルクリックするとURLは 'localhost/python-test/app.py'になり、 'Apache/2.4.23(Win64)PHP/5.6.25 mod_wsgi /4.5.17のPython/3.6 localhostのポート80' でサーバー
Serverのログは言う:
[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のエラーログ火8月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. Spark Streamingで複数のバッチ間隔でデータストリームを運ぶ方法
- 2. CastleウィンザーでCreationContext.AdditionalArgumentsを運ぶ
- 3. fcgiでフラスコを運転する
- 4. Windows用Django + mod_wsgi + apache + wamp最適化テクニック
- 5. はmod_pythonのとmod_wsgiをモジュール
- 6. サブドメインと同じipにmod_wsgi-expressを使ってフラスコを走らせる方法
- 7. (フラスコ/モジュール/デバッグ)
- 8. mod_wsgiデーモンモードアプリケーションでモジュールをリロードする
- 9. 派生クラスがC++で異なるデータ型を運ぶ最も良い方法
- 10. WAMPサーバーのポートフォワード方法/ WAMPサーバーの修正方法
- 11. フラスコ-移行する移行モジュールを自動インポートする方法
- 12. Pythonのフラスコ:モジュールのインストール
- 13. mod_wsgiを使用してapache上にフラスコを配置
- 14. MongoDB。集計パイプラインを使用して計算フィールドを運ぶ方法
- 15. フラスコSQLAlchemy:基本モデルクラスを拡張する方法?フラスコ/ SQLAlchemyので
- 16. Apache mod_wsgiフラスコが約1分後にクラッシュする
- 17. Wampサーバーの実行方法
- 18. iPhoneマップキットの運転方法
- 19. GradleモジュールとGrailsモジュールを結ぶベストウェイ
- 20. エラー応答で余分な情報を運ぶ
- 21. フラスコでストリーミングレスポンスを停止する方法
- 22. Jinja2テンプレートでフラスコをデコードする方法
- 23. エージェントを作成する方法は、アナロジーで運転する道を選ぶことができますか?
- 24. 水平線の描画方法は?私は運動を学ぶようにOpenGLに新しいです
- 25. PHPで文字列を正規化して運ぶ最も良い方法は何ですか?
- 26. バイナリ追加の際に桁をどのように運ぶか?
- 27. Flask with mod_wsgi - 私のモジュールを呼び出せません
- 28. 私たちにいくつかの場所にポインタを運ぶノードの空きメモリを行う方法
- 29. HttpRequestMessage.Propertiesを使用して要求ごとにコンテキストを運ぶ
- 30. データベースに情報を保存した後にデータを運ぶ
あなたの応答は答えとして来るべきではありませんが、あなたは、あなたの質問を編集し、新しい情報で更新が追加されている必要があります。そのような情報は、「動作しない」と定義する必要があります。そうしないと、人々は理由を推測することになります。言い換えれば、あなたはどんなエラーを見ていますか?どこですか? 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''行をコメントアウトしてください。 –