NginxとFastCGI環境での常時SSL化でリダイレクトを繰り返した場合への対処法

せっかく SSL 使ってるから全体を常時 SSL 化しておくか・・・という事で設定してみたもののずっとリダイレクトされる状況に陥ったのでその場合の対処法をメモ。

参考にさせて頂いたサイトはこちら ↓

こちらのサイトに書かれているこちらの項目「4.4 nginx の設定変更(FastCGI パラメータで SSL を有効化)」がそのままズバリでございました。

トップページ見ると「リダイレクトが繰り返されました」というエラー。

管理画面に行っても同様。

結果、FastCGI 側に「fastcgi_param HTTPS on;」と言うパラメーターが必要だったという事でした。

 1  location ~ \.php$ {
 2    try_files $uri =404;
 3    expires        off;
 4    fastcgi_pass   phpfpm;
 5    fastcgi_index  index.php;
 6    fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
 7    include        fastcgi_params;
 8    fastcgi_param  REMOTE_ADDR      $http_x_real_ip;
 9    fastcgi_param  HTTPS on; # この部分の記述が必要
10    fastcgi_pass_header "X-Accel-Redirect";
11    fastcgi_pass_header "X-Accel-Buffering";
12    fastcgi_pass_header "X-Accel-Charset";
13    fastcgi_pass_header "X-Accel-Expires";
14    fastcgi_pass_header "X-Accel-Limit-Rate";
15}

修正後、設定を再読込すると問題なく表示されましたヽ( ´∀`)ノ

とりとめのないまとめ

今回、nginx の設定にばかり目が行ってしまって FastCGI の方に中々意識が行かなくてハマってしまいました・・・。