2008-03-11 21:52:31
ubuntuにmod_pythonをインストールしてみた。ubuntuの場合、synapticなどで、libapache2-mod-pythonをインストールするだけである。その後、スクリプトを動かしたい場所(たとえば/var/www)の<Directory>の項に以下の3行を追加。
AddHandler mod_python .py PythonHandler mod_python.publisher PythonDebug Onそして、Apacheの再起動。この設定は、.htaccessに書いてもいいらしい。
試しに、時刻を表示させてみる。
#!/usr/bin/python # -*- coding: utf-8 -*- import time def index(req): html = ''' <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>現在の日時を表示する</title> </head> <body> <h1>現在の日時を表示する</h1> <p>現在の日時は、「%s」です。</p> </body> </html> ''' now = time.strftime('%Y年%m月%d日 %H時%M分%S秒') return html % now問題なく動いたようなので、次に文字列を送ってそれを受け取り、表示させてみた。
#!/usr/bin/python # -*- coding: utf-8 -*- def index(req,words): html = ''' <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>テキスト入力フィールドに入力された文字を取得する</title> </head> <body> <h1>テキスト入力フィールドに入力された文字を取得する</h1> <p>入力された文字は、「%s」です。</p> <form action="test09.py" method="get"> <input type="text" name="words" /> <input type="submit" /> </form> </body> </html> ''' return html %(words)実はこれに何時間もかかっている。上のようにGETだと受け取れるのだが、POSTだと受け取れない。どうしてなのだろう。どうしたらいいのか判らない。ネットで調べても、mod_pythonの日本語の例がほとんど見つからない。皆、使っていないのだろうか。こういうhtmlページの書き出しはPHPの方が楽なような気がする。慣れの問題かも知れないけど。