、私は(削除した書式)の形式を持っている:
<form action="/path/foo.php" method="post">
Email: <input type="text" name="email">
Password: <input type="password" name="password">
<input type="checkbox" name="remember" checked="checked"> Remember me
<input type="submit" value="Log In">
</form>
時々、ユーザーがログインすることができません:報告された行動は、彼らがログインしようとした、新鮮なログイン画面が表示されたということでした。
問題を複製できたとき、$ _POSTは空です:$ _POST ['email']と$ _POST ['password']には送信された値がなく、次のログだけが "## ":
error_log("#" . file_get_contents("php://input") . "#");
なぜこれがリダイレクトに起因するのかわかりません。それは/ directory - >/directory /の場合には当てはまりません。そしてApacheの関連するVirtualHostセクションを通した見直しはほとんど書き直されておらず、ファイルに影響を与えるものではありません。 (表示されたURLは、フォームで参照されているものと同じです)
システムは数ヶ月間存在しており、問題は私に今日最初に報告されました。
最近のバージョンで改良される可能性のある流行がある場合に備えて、最新のApacheとPHP(5)のアップデートを予定しています。しかし、私はフォームを記入した後に空の$ _POSTを得るかもしれない他の方法を聞くことに非常に興味があります。
思考?
フレームワークまたはCMSの中で、これはまったくまっすぐなPHPですか? –
ブラウザの情報をログに記録したい場合があります。ブラウザに関連した問題かもしれません。 – Lucky
"error_log(var_dump($ HTTP_RAW_POST_DATA));" "NULL"を表示します。 – JonathanHayward