web-dev-qa-db-ja.com

PythonおよびWindows上のXAMPP:方法は?

Win7x64XamppとPython 2.7にインストールしました。

今、私はPython言語の「力」を手に入れようとしています...どうすればそれを行うことができますか?

Mod_pythonとmod_wsgiを試してみましたが、私のバージョンのPythonには最初のものが存在せず、wsgiをインストールした後にApacheを起動しようとすると、エラーが発生します。

< Directory "\x93C:/wsgi_app\x94"> path is invalid

ここに文字列が表示されるように、<と 'directory'の間にスペースを追加しました。

だから...これらの機能をインストールするための小さなチュートリアルがあるかどうか誰かが知っていますか?

それとも、誰かが私に段階的に説明してくれるほど親切ですか?

説明できなくてすみません。

何か必要な場合は、私に聞いてください。

10
Bonny1992

はい、その通りです。mod_pythonはPython 2.7では機能しません。したがって、mod_wsgiが最適なオプションです。

AMPPSをお勧めしますpython環境はデフォルトでmod_pythonで有効になっており、python 2.5。 AMPPS Webサイト

それでも続行したい場合は、

この行をhttpd.confに追加します

LoadModule wsgi_module modules/mod_wsgi.so

Httpd.confの行のコメントを解除します

Include conf/extra/httpd-vhosts.conf

Vhostファイルhttpd-vhosts.confを開き、追加します

NameVirtualHost 127.0.0.1:80
<VirtualHost 127.0.0.1:80>
    <Directory "path/to/directory/in/which/wsgi_test.wsgi/is/present">
        Options FollowSymLinks Indexes
        AllowOverride All
        Order deny,allow
        allow from All
    </Directory>
    ServerName 127.0.0.1
    ServerAlias 127.0.0.1
    WSGIScriptAlias /wsgi "path/to/wsgi_test.wsgi"
    DocumentRoot "path/to/htdocs"
    ErrorLog "path/to/log.err"
    CustomLog "path/to/log.log" combined
</VirtualHost>

Wsgi_test.wsgiに次の行を追加します

def application(environ, start_response):
    status = '200 OK'
    output = 'Hello World!'

    response_headers = [('Content-type', 'text/plain'),
                        ('Content-Length', str(len(output)))]
    start_response(status, response_headers)

    return [output]

注:htdocsにテストディレクトリを作成しないでください。まだ試したことがないので。これらの手順は、AMPPSでうまくいきました。 :)

次に、お気に入りのブラウザで127.0.0.1/wsgiにアクセスします。 Hello World!が表示されます。

表示されない場合は、 QuickConfigurationGuide に従ってください。

OR

これらの行はhttpd.confに追加できます

<IfModule wsgi_module>
<Directory path/to/directory>
    Options FollowSymLinks Indexes
    AllowOverride All
    Order deny,allow
    allow from All
</Directory>
WSGIScriptAlias /wsgi path/to/wsgi_test.wsgi
</IfModule>
14
John D

WSGIの方がはるかに優れていますが、少なくとも私はグーグルで検索し、何日も成功せずにセットアップしようとしました。 CGIは効率が劣りますが、ほとんどの人がWindowsを開発にのみ使用するため、ほとんどまたはまったく違いはありません。セットアップはとても簡単です!

CGIメソッド:

  1. Xampp\Apache\conf\httpd.confで次の行を探します:AddHandler cgi-script .cgi .pl .asp。次のように変更します:AddHandler cgi-script .cgi .pl .asp .py
  2. 作成する各Pythonスクリプトの先頭で、Pythonのバージョンへのパスを設定します。たとえば、C:\ Python27にある場合は、次のように記述します。#!/ Python27/python
  3. テストサンプルテストコードをxampp\cgi-binに配置し、localhost/cgi-bin /your-file.pyにアクセスします

サンプルテストコード(コメントを変更pythonインストールした場所に応じたパス):

#!C:/Python27/python

print "Content-type: text/html\n\n"
print "<html><head><title>Hello World from Python</title></head><body>Hello World from a Python CGI Script</body></html>"

何かがうまくいかない場合は、xampp1.8.1でこれをテストしました。

ソース: http://elvenware.com/charlie/development/web/Python/Xampp.html

15
Tomas