Debianをほとんど使ったことのない上野です。ちょっと仕事で使う事になったので色々と調べています。DataAPIを使える様にしたかったのですが動かず、手間取ってしまったのでログを残しておきます。
普通にnginxとfcgiwrap, spawn-fcgiをインストールします。(MySQLとかもインストールしますが、ここでは割愛)
$ sudo apt-get install nginx fcgiwrap spawn-fcgi
ここで設定ですが、nginxをちょっとうまく設定してやらないとfcgiwrap側にPATH_INFOが渡らない。
location / { access_log /var/log/nginx/foobar.access.log; error_log /var/log/nginx/foobar.error.log; index index.cgi index.html; location ~ \.cgi(/|$) { gzip off; fastcgi_index index.cgi; fastcgi_split_path_info ^(.+?\.cgi)(/.*)$; if (!-e $document_root$fastcgi_script_name) { return 404; } fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include /etc/nginx/fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param PATH_INFO $fastcgi_path_info; fastcgi_param PATH_TRANSLATED $fastcgi_path_info; fastcgi_pass unix:/var/run/fcgiwrap.socket; } }
SCRIPT_FILENAME の設定が2回ありますが、この2行でfastcgi_paramsのincludeを挟んでやらないと、うまくパラメーターが上書きできず403エラーが返ってきてしまいます。そのエラーも単に"403"と返ってくるだけ。整形もなにもされていません、たったの3バイト。仕方が無いので2行書いています。
前だけでも、後ろだけでもダメ。Debianのメーリングリストに同様の問題が報告されていたので、バグかなと思いますが、それ以上は追っていません。動いたし(苦笑)
ともかくこれで動くようになりました。めでたし、めでたし(^^)
Movable Type 6 本格活用ガイドブック (Web Designing BOOKS) | |
藤本 壱 柳谷 真志 奥脇 知宏 シックス・アパート株式会社 マイナビ 2013-11-30 売り上げランキング : 133328 Amazonで詳しく見る by G-Tools |