私はCodeIgniter 1.7を使用している古いWebアプリケーションを拡張しようとしています。 POSTリクエストでしかアクセスできない特定のルートを希望します。関数の先頭には次のものがあります。PHP REQUEST_METHOD POSTがGETに変わります
if ($_SERVER['REQUEST_METHOD'] != 'POST')
die ('Wrong request method: ' . $_SERVER['REQUEST_METHOD']);
ローカルでは、PHPのビルトインWebサーバーを使用してPHP 7.0.14で正常に動作します。しかし、プロダクションでは、PHP 5.4.25を実行しているCPanel管理サーバー上では、それはありません。
郵便番号でPOSTリクエストを私のルートに送信すると、次のようになります。
間違ったリクエスト方法:はPUT、をDELETE PATCH、
GET、...の要求すべてを正しく認識します。 POSTリクエストは、魔法のようになります。GETリクエストです。
POST私がこのリクエストで送信したデータも消えているようで、$_POST
または$_GET
のいずれにも見つかりません。
これはCodeIgniterフレームワークとは関係がないようですが、フレームワーク外のファイルを呼び出すと同じ結果になります。
どのような考えですか?
おそらく、http://stackoverflow.com/questions/20268863/laravel4-post-unexplained-redirect-to-get(おそらく重複しているかどうかはわかりません)と同じ回答です。 – LSerni
mod_rewriteのルールはありますか? –
また、リダイレクトがあった場合はアクセスログを確認してください。ページリロードによるフォームの再提出を避けるために、POSTリクエストを処理した後に302で応答するのはかなり一般的です。 –