MAMPでmod_pythonが使えるようにする
2009.04.25
すでにMAMPがインストールされているものとする。
下準備
- 「システム環境設定」から「共有」を選び「Web共有」を停止する。(MAMPのApacheを80番ポートで走らせるため)
- 独自のMySQLが走っているなら、それも停止する。
MAMPの設定
- MAMPを起動して、設定パネルからApacheのポートを80番、MySQLのポートを3306番に変更する。
mod_pythonのインストール
- ここか(original)
ここから(mirror)
mod_pythonをダウンロード - 落としたファイルを以下のようにして展開する。
$ tar xzf MAMP-1.7.1_mod_python-3.3.1.tar.gz -C /Applications/MAMP/Library
- 次に以下のコマンドのように、ユーザライブラリ下にPythonフォルダを作りMAMP下のmod_pythonへのシンボリックリンクを作る。
$ mkdir -p ~/Library/Python/2.5
$ ln -s /Applications/MAMP/Library/site-packages/ ~/Library/Python/2.5/site-packages - httpd.confに以下の行を追加して、mod_pythonがロードされるようにする。
LoadModule python_module modules/mod_python.so
- 最後にMAMPのApacheを再起動する
mod_pythonが動いているか確かめる。
- httpd.confに以下の行を追加する。
<Location /mpinfo>
SetHandler mod_python
PythonHandler mod_python.testhandler
</Location> - http://localhost/mpinfoにアクセスして以下のような画面が出てくればOK。

以上


9月 18th, 2009 at 11:47
参考になりました!
9月 19th, 2009 at 2:16
…と思ったら、最後の画面は出てくるんですが .pyファイルをブラウザで開くとソースがそのまま出てきてしまいます。 何がいけないんですかねえ…
9月 19th, 2009 at 9:59
pythonスクリプトをCGIとして動作させたいのでしたら、 httd.confなどに、通常のCGIの設定を行うだけです。 以下、自分の設定を書いてみました。 AddHandlerに.pyを追加して、CGIとして動作させています。
httpd-vhosts.conf
DocumentRoot /work/web/49178/www
ScriptAlias "cgi-bin" /work/web/49178/cgi-bin
AddHandler cgi-script .cgi .pl .sh .py
ScriptAlias /cgi-bin/ "/work/web/49178/cgi-bin/"
</VirtualHost>
/work/web/49178/cgi-bin/hello.py
# -*- coding: utf-8 -*-
print "Content-type:text/html"
print ""
print "Hello Python"
mod_pythonからpythonインタプリタを通してpythonスクリプトにアクセスする方法は、実は、自分はよくわかっていません。とりあえずこちらなどを参考にされてはいかがでしょうか?
/Applications/MAMP/conf/apache/python.conf
PythonHandler hello
PythonDebug On
という風に記述して、
/path/to/hello.py
def handler(req):
req.content_type = "text/plain"
req.send_http_header()
req.write("Hello, World")
return apache.OK
9月 19th, 2009 at 22:15
わざわざご丁寧にありがとうございます。 PHPに慣れてしまっていたせいで
・.pyファイル先頭の2行が必須 ・パーミッション設定も必須 ・出力が何もないとInternal Server Errorが出る
という点が理解できてませんでした。 自分の場合はローカルサーバー全域でPythonが使えるようにしたかったので、単にhttpd.confに
AddHandler cgi-script .py
の一行を追加するだけで有効になりました。 ありがとうございました!
12月 20th, 2010 at 16:29
[...] 視需要重起。這樣就會在mpinfo的這個資料夾單獨使用到python 作法轉自:MAMPでmod_pythonが使えるようにする … other posts by walile [...]