fc2ブログ

nginx for Windows で nginx.conf の変更内容をちゃんと反映させる方法

今日もWEBサーバーの nginx と格闘。
昨日に引き続き、nginx.conf をいじると何も表示されなくなる。
(Google Chrome では「エラー: このリンクは無効です。」、IEでは「Web ページがみつかりません」と表示される。)
いろいろと試行錯誤した結果、「nginx.conf 変更後に何も表示されない問題」の解決方法がわかったのでブログにまとめておく。

nginx for Windows のインストールについては nginx for Windows でPHPを動かす を参照。

<nginx.conf の変更内容をちゃんと反映させる方法>
注)コマンドプロンプトは、 cd で nginx をインストールしたフォルダに移動していることが前提(フルパスで nginx.exe を記述しても可)
・テキストエディタなどで nginx.conf を変更

・コマンドプロンプトで、nginx -t で nginx.conf の構文チェック

nginx.confを開いてるテキストエディタのウィンドウを閉じる

・コマンドプロンプトで、nginx -s reload で変更内容を反映

・ブラウザでページを表示(すでに表示されていたらページをリロード)

・何も表示されなかったら、「コマンドプロンプトで nginx -s reload → ページをリロード」を何度か繰り返せば表示される

nginx が nginx.conf の読み込みに失敗しているから、変更後に何も表示されなくなるのだろう。読み込みに失敗する理由はわからないが。
テキストエディタを開いているときは、何度 nginx -s reload を実行してもダメだった。(ちなみに自分が使用しているのはサクラエディタ)

<2010/9/5 追記>
nginx.conf を変更しなくても、nginx 起動後に何も表示されないことがある。
(Google Chrome では「エラー: このリンクは無効です。」、IEでは「Web ページがみつかりません」と表示される。)
その場合も、「コマンドプロンプトで nginx -s reload → ページをリロード」を何度か繰り返せば表示される。
<追記ここまで>

<2010/9/8 追記>
nginx.conf 以外にも、テキストエディタで開いているとnginxの起動に失敗するファイルがあるようだ。
nginx をインストールしたフォルダ直下に作ったバッチファイルをテキストエディタで開いていたとき、何度 nginx -s reload を実行しても画面が表示されなかった。テキストエディタを閉じて nginx -s reload を実行したらきちんと表示された。

htmlファイルは表示されるのに、phpファイルは表示されない場合がある。その際は、nginx と php-cgi.exe 両方を再起動するときちんと表示された。
<追記ここまで>

nginx.conf をまともにいじれるようになったので、nginx で CakePHP が動くようになった。
スポンサーサイト



コメント

コメントの投稿

非公開コメント

プロフィール

himax64

Author: 南西
30代後半の無職です。
就活もせずダラダラ生きてます。
作ったもの

最新記事
人気記事
検索フォーム
カテゴリ
月別アーカイブ
最新コメント
最新トラックバック
RSSリンクの表示
QRコード
QRコード
カウンター