2011-12-09 6 views
1

POSTメソッドを使用してデータを送信するフォームがあります。 POST宛先は「http://www.example.com/form」として設定されています。ただし、実際のP​​OSTファイルは「http://www.example.com/form/index.php」です。ファイル名なしのHTTP POSTの問題

このアクションにはファイル名(index.php)が含まれていないため、POST変数はページに表示されません。 (これは、GET要求は正常に動作していると言いました)

アクションやメソッドを変更するのは短期間ですが、これには修正がありますか? mod_rewriteルールを実装してPOST値をページに渡すことはできますか?

+0

あなたは、リクエストの見た目に改ざんデータやhttpfoxなどのfirefoxプラグインを使ってみましたか?フォームがindex.phpページにある場合は、フォーム上のアクションを完全に削除しても、var_dump($ _ POST)を試してみましたか? – TommyBs

+0

var_dump($ _ POST)を無駄にしようとしました。また、POST宛先index.phpページ以外のページにもフォームがあります。 – Andrew

答えて

2

私は

<form action="/test/" method="POST"> 

でこれを再現することができませんでしたしかし、私は私のApacheが移動し、永久として/test/とPOST変数にリダイレクト送る後者の場合には

<form action="/test" method="POST"> 

でそれを再現することができました失われています。

このリダイレクトはmod_dirによって行われます。 mod_dirをスラッシュのないディレクトリへのリンクを無効にすると、それ以上は機能しなくなります。

唯一のアドバイスは、フォームのアクションを修正することです。

+0

あなたのシナリオ2は、シナリオ1ではなく、実際に私が最後に見ているものです。 – Andrew

+0

提案をお寄せいただきありがとうございます。私はフォームにアクセスすることはできませんが、管理しているチームに私が最後に何もできないことを知らせるようにします。私は彼らがGETにメソッドを変更することを提案しました、それはうまくいくようです。 – Andrew