2016-08-21 11 views
0

OS:未亡人2012r2Apache 2.4(32ビット)ターゲットWSGIスクリプトannotをPythonモジュールとして読み込むことができます。 web.py

Webサーバ:Apacheの2.4.23(32bit版)

のpython:2.7.12

Webフレームワーク:0.38

mod_wsgiをweb.py:mod_wsgiを-4.4.23 + ap24vc9-CP27-cp27m-win32の

許可の理由は除外することができるので、私は、Apacheサーバ・システム権限を与えます。

この全体のプロセスは次のとおりです。HTTP->はApache 2.4> mod_wsgi-> web.py

wsgi.conf:

WSGIScriptAlias/"C:/Apache24/htdocs/test.py/"

エイリアス/静的 "C:/ Apache24/htdocsに/静的/" のAddType text/htmlでの.py

はすべて

を付与されて必要とするすべての を否定を要求

================================= ==

test.py:

コード:UTF-8

インポートウェブ

れるURL =( '/.*' 'ハロー')

クラスhello: def GET(self): return "こんにちは、世界。"

アプリ= web.application(URLを、グローバル()、自動再=偽)

アプリケーション= app.wsgifunc()

=============== ==================================

その後、それは働きます! IEを開き、url:localhost:80と入力します。ページの表示:こんにちは、世界。以上を踏まえ

は、私がwsgi.confのコードを変更:

=========================== ======================

WSGIScriptAlias/"C:/Apache24/htdocs/code.py/"

エイリアス/静的「C :/ Apache24/htdocs/static/" AddType text/html。PY

はすべて================================

を付与されて必要とするすべての を否定を要求します=================

そしてcode.py:

コーディング:UTF-8

インポートウェブconfig.urlインポートのURLから を

アプリ= web.application(URLを、グローバル())

アプリケーション= app.wsgifunc()

====================== ===========================

その後、Apacheはまだ動作し、

が、error.logにショー:「ターゲットWSGIスクリプト 'C:/Apache24/htdocs/code.py'をPythonモジュールとして読み込めません。

そしてURL:localhost:80には動作しないことができ、表示:「500内部サーバーエラー」

誰もが問題を解決するためにどのように伝えることができますか?どうもありがとう。

Error.logです:

[木8月25日02:05:43.687446 2016] [WSGI:エラー] [PID 3780:TID 1248] [クライアント192.168.1.107:61159]のmod_wsgi(PID = 3780) :ターゲットWSGIスクリプト 'C:/Apache24/htdocs/code.py'をPythonモジュールとしてロードすることはできません。 [wsgi:エラー] [pid 3780:tid 1248] [クライアント192.168.1.107:61159] mod_wsgi(pid = 3780):WSGIスクリプトの処理中に例外が発生しました 'C: /Apache24/htdocs/code.py '

[木8月25日02:05:43.687446 2016] [WSGI:エラー] [PID 3780:TID 1248] [クライアント192.168.1.107:61159]トレースバック(最新の呼び出しの最後):

[木8月25:02:05:43.687446 2016] [wsgi:error] [pid 3780:tid 1248] [クライアント192.168.1.107:61159]ファイル "C:/Apache24/htdocs/code.py"、行5、

[Thu Aug 25 02:05:43.687446 2016] [wsgi:error] [pid 3780:tid 1248] [client 192.168.1.107:61159] config.urlからのインポートURL

[Thu Aug 25 02:05:43.687446 2016] [wsgi:エラー] [pid 3780:tid 1248] [クライアント192.168.1.107:61159] ImportError:No mo [wsgi:error] [pid 3780:tid 1248] [クライアント192.168.1.107:61160] mod_wsgi(pid = 3780):ターゲットWSGIスクリプト(pid 3780:tid 1248) 'C:/Apache24/htdocs/code.py'をPythonモジュールとして読み込めません。referer:192.168.1.146

[Thu Aug 25 02:05:43.859495 2016] [wsgi:error] [pid 3780:tid] 1248] [クライアント192.168.1.107:61160] mod_wsgi(pid = 3780):WSGIスクリプト 'C:/Apache24/htdocs/code.py'の処理中に例外が発生しました。referer:192.168.1.146

[Thu Aug 25 02 :05:43.859495 2016] [wsgi:エラー] [pid 3780:tid 1248] [クライアント192.168.1.107:61160]トレースバック(直近の最後のコール):リファラー:192.168.1。[wsgi:error] [pid 3780:tid 1248] [client 192.168.1.107:61160]ファイル "C:/Apache24/htdocs/code.py"、[ファイル:C:/Apache24/htdocs/code.py] 5、in、referer:192.168.1.146

[Thu Aug 25 02:05:43.859495 2016] [wsgi:error] [pid 3780:tid 1248] [client 192.168.1.107:61160] from config.url importリスナー:192.168.1.146

[Thu Aug 25:05:43.859495 2016] [wsgi:エラー] [pid 3780:tid 1248] [クライアント192.168.1.107:61160] ImportError:config.urlという名前のモジュールがありませんリファラー:192.168.1.146

+0

正しくフォーマットしてください。 – manetsus

+0

Apacheエラーログのその行の後に、Pythonスタックトレースと例外の詳細があったはずです。何だって? Apache構成で最初に後続のスラッシュを置いた場所が間違っていますが、最初に後続のスラッシュが別の問題である可能性があるため、エラートレースバックを最初に確認できます。 –

答えて

0

を含むディレクトリパッケージ/モジュールがPythonモジュール検索パスにありません。 mod_wsgiが実行されている場所にPythonインタプリタを実行するように指示するには、WSGIPythonPathというディレクティブを使用する必要があります。

+0

Graham Dumpletonありがとうございました。私はあなたの提案に従って、問題をうろついた。私はcode.pyにパス情報を追加し、それが動作します: 輸入OS インポートsysを sys.path.append( 'C:\ Apache24 \ htdocsに') おかげで再び – xie

関連する問題