Python3でApacheのCGIを作っていたとき、OSXの環境を整えるのが、結構はまったのでメモ。
まず、Apacheの設定を変更します。OSX(Yosemite)でApacheの設定変更は下記のようにします。
$ sudo vi /etc/apache2/httpd.conf
そして、以下の設定を変更します。
#LoadModule cgi_module libexec/apache2/mod_cgi.so # ↓ LoadModule cgi_module libexec/apache2/mod_cgi.so
Options に ExecCGI を追加。そして、SetEnvで文字コードをしっかり指定。特に、PYTHONIOENCODINGの指定が重要です。
<Directory /> Options ExecCGI SetEnv PYTHONIOENCODING utf-8 AddHandler cgi-script .cgi AddHandler cgi-script .py </Directory>
最後に再起動したら、Python3でCGIできます。
$ sudo apachectl restart