「ページは機能していません。…では現在このリクエストを処理できません。HTTP ERROR 500」というエラー表示に関してはphpを修正してサイトも表示され、ログインも出来た。(⇒対処法)
ところが、日を置いてログインしようとしたら、ログインができない。
次の表示が出た。「エラー: 予期しない出力により Cookies がブロックされました。ヘルプが必要な場合はこちらのドキュメンテーションを読むか、サポートフォーラムをご利用ください。」
「エラー: 予期しない出力により Cookies がブロックされました」の対処方法とは?
「Cookies がブロック」って何?
「エラー: 予期しない出力により Cookies がブロックされました。ヘルプが必要な場合はこちらのドキュメンテーションを読むか、サポートフォーラムをご利用ください。」には、「こちら」と「サポートフォーラム」にリンクが張られている。
が、内容がわからない。
そもそも、ログインするにはIDとパスワードを入力する必要があるのだが、通常はキャッシュが使われていて改めて入力する必要はない。
しかも、いつも通り、IDとパスワードは入っている。
これを「Cookies がブロック」というのは意味不明である。
念の為、改めてIDとパスワードを入力しても同じ表示が出る。
しからばということで、パスワードの再設定を試みた。
すると出たのが次の表示。
/home/△△△/dead.letter… Saved message in /home/△△△/dead.letter
メールを送信できませんでした。
ホスティングサービス上で mail() 関数が無効になっている可能性があります。
次から次と問題が発生する。
現状で問題は2つ。
①「エラー: 予期しない出力により Cookies がブロックされました。・・・」
②「・・・ホスティングサービス上で mail() 関数が無効になっている可能性があります。」
やはり優先すべきは①と見た。
そこで、調べてみると「PHPが問題かも」という情報が・・・。
function.phpが問題かも
function.phpに関しては、修正を行い、サイトも表示され、ログインも出来た。
しかし、日を置くと、サイトは表示されているものの、ログインしようとすると、「エラー: 予期しない出力により Cookies がブロックされました。・・・」という表示が出る。
やはり、function.phpが問題なのか?
「怪しげなのはエラーになる前に触っていたfunction.phpです。
ファイル終わりの ?> の前後の改行とスペースが原因のようです。
早速、ファイル終わりの ?> 前後の改行とスペースを削除し、再度ログイン画面を開くとエラーが消え正常に起動・・・」
ここでもfunction.phpである。
そこで、ローカルにfunction.phpを移して、メモ帳(CrescentEve)で開いた。
そこで、「おや?」という表示が。
私はCrescentEveの文字のエンコードはShift_Jisにしている。
しかし、function.phpを開くのに、拡張子をtxtにした時に、「UFT8・・・」という表示が。
function.txtを見ると、最初の「 原因はこれだったようだ。
それにしても、一旦、ログインが出来たのは何だったのか?
さらに、前はサイトの表示の出来なかったのに今度はサイトの表示はできているがログインは出来ないという中途半端な現象。
何にしても復帰できて良かった。
②「・・・ホスティングサービス上で mail() 関数が無効になっている可能性があります。」については、まだ、確認していない。
これについては後日、記事をアップの予定です。