あるページにアクセスしようとすると、無限にリダイレクトして見れなくなっていた事象(apache2のconfファイルの設定ミス)

解決はしたけれども、今後の備忘録として。自分のサイトだから問題ないミスでしたが、仕事で納品するモノでやらかしてたら「使えることを確認」して送ったら、「しばらくしたらエラーで使い物にならない」という事象で、ちょっと大変だったろうな、と思います。

特にポイントなのが、送り先から「ちゃんと動いてませんよ」と教えていただいてから、それで、あとから機能してないことに気がついたので、ちょっとあわてたので。

自分で気がつけたらまだよかったのですが。とりあえず、ここでは、起こった問題とどうしてそうなったのかについてを、備忘録的に残しておこうと思います。

問題

すでに、これまで記事にしたことがある、サーバーに関するお話しです。

ここに、我が子の内祝のために作ったハガキpdfをあっぷしたのです。

しかし、エラーになってみられない、と連絡がきました。

思ったこと

何でだろう。

QRコードまでつくったのに笑

そして、作った直後のテストではきちんと、みることができていたのに。

ということは、その後に自分がした「なにか」がよくなかったのか。

なにしたっけ。

調査

ページのURLのQRコードをよみとった送り先の人から、エラーの画面を送ってもらいました。

ページにアクセスしようとすると「到達できません」と出ている。

これは、無限にリダイレクトをされてしまっている、可能性がある、らしい。confファイルの整備がまちがったかな?とおもい、一つずつ確認する。

現状

さらに、調べてみると、同じページコンテンツ、httpは閲覧できるけれどhttpsで見れなくなっている。

予測

ということは、コンテンツデータそのものにやはり問題はなさそうです。

やっぱり、httpをhttpsにリダイレクトさせようとして仕込んだものがダメだったみたいだ。

再調査

httpsの設定を書いてある場所を見る。confファイルの場所は、ubuntuのデフォルトの場所にある。

するとリダイレクト先が書いてある。

発見

こいつだ。

httpsにアクセスすると、httpsにふたたびリダイレクトする記述になってしまっている。これは本当は、httpにアクセスがあったときに、httpsにリダイレクトさせるために記載したつもりの設定コードだった。のに記載先を間違えていて、セルフリダイレクトが無限に起こる状態になっていた。

つまり、これを443じゃなくて80の方に書き込みすればよい。

これでうまくいくはず。

より詳しく

port443の方に、

Redirect permanent / https://show-go.works/

を記載してしまっている。

削除して、port80のほうに直す。

結果

ちゃんと治った。

内祝いのpdfハガキもきちんと見れた。

結論

今回の事象としては、httpsページを開いたら、httpsページにリダイレクトしてしまう設定になっていった。

その原因は、設定ファイルのport80に関する場所に書くべき記載を、本来リダイレクト先のport443のところに書いていたから。つまり、リダイレクト先の方に、リダイレクトを書いてしまって、間違えて無限にリダイレクト、セルフリダイレクト状態になっていたから。

つまり、今回のような表示になっているときにはたらい回しになっている可能性が高いから、以後も注意する。

サーバー運用全般に関して

今回の件、結構なやらかしでして。

URL送付するまえに、きちんとみることができることは確認していたのです。

その後、セキュリティを上げようとおもって、httpからhttpsへのリダイレクトを記載したのです。ここで、記載先を間違えていました。

が、自分では気が付くことができず、送った人から見られなくなっている、と連絡をもらってそこで初めて、設定ファイルの記載を間違えていることに気がつきました。

ページ全体に関わるリダイレクトの処理については、これまで公開している領域に対しても影響がないかどうかについて、一応慎重に検討して、それから公開するようにした方が良いです。

ですから、全体の仕様に大きな影響を与える記述をするときには、機械的に記載するのではだめですね。設定ファイルの名前ををよく確認してから記載する、という当たり前を大事にしないといけないということです。

このことの深刻さについて、強く実感したのでした。


コメント

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です