- ベストアンサー
nginxでCGIが動かない!?
- CentOS7にnginxをインストールし、Movable Type(以下、mt)を導入しようとしているが、mtのインストールモジュール(*.cgi)をキックしても、HTTP 403エラーと表示される。同ディレクトリのindex.htmlは問題なく表示される。CGIが動く環境にし、mtインストールを可能としたい。
- nginxのdefaut.confでCGIの設定を行っているが、mtのモジュールが正しく動作しない。CGIを有効化してmtのインストールを完了したい。
- CentOS7にnginxをインストールし、mtのインストールを試みているが、mtのインストールモジュール(*.cgi)が正常に動作しない。CGIを動かすための設定やアクセス権の設定に問題があるのか確認したい。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
> mtモジュール格納場所を/var/www/html以下に持っていって確認しましたが、 > 状況変わらずでした。 ご確認ありがとうございます。 403なので何かしらのアクセス権の問題と思いますが、例えば、MTのプロセスを実行しているユーザとMTのディレクトリやファイルの所有者:所有グループに違いはないでしょうか。 後はmtモジュール移動後のfastcgi_param のPATHが正しいか、Ubuntu/Debianだとincludeを fastcgi_param ではさむ必要があるなどがパッと考え付きましたがCentOS7でも当てはまるのか分かりません。 === fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include /etc/nginx/fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; === http://ptna.hateblo.jp/entry/2016/01/27/Ubuntu14_04_%2B_nginx_%E3%81%A7MT6_2_2%E3%82%92%E5%8B%95%E3%81%8B%E3%81%99%E3%81%BE%E3%81%A7
その他の回答 (1)
- h271015
- ベストアンサー率71% (62/87)
> →ドキュメントルート: /var/www/html > mtモジュール格納場所: /var/www/cgi-bin/mt-site ドキュメントルートとして設定されているディレクトリ配下にMovableTypeが設置されていないことが影響しているように思います。 ドキュメントルートを/var/www/htmlとしているのであれば、mtモジュール格納場所を/var/www/html以下にする必要があると思います。 あるいはmtモジュール格納場所を/var/www/cgi-bin/mt-siteとしたい場合、ドキュメントルートを/var/www/cgi-bin等にしなければならないと思います。
お礼
早速のアドバイスありがとうございました。 mtモジュール格納場所を/var/www/html以下に持っていって確認しましたが、 状況変わらずでした。 やはりディレクトリの問題でしょうか。。
お礼
ありがとうございます。 ディレクトリのアクセス権は問題ありませんでした。 ~\.CGI${}コンテナの記述について、fastcgi_paramを変えてみたり しましたが、特に変わらず。。 このコンテナ内でroot /var/www/cgi-bin/mt-site; を追加すると通りました! アドバイスいただいたPATHの問題でしたね! 本当に助かりました。 ベストアンサーにさせていただきました。 今後ともよろしくお願い致します。