ヘッダー付きの HTTP ポストを使用してファイルをアップロードしようとすると、Content-Type: multipart/form-data; boundary=-----NPRequestBoundary-----
すべてが期待どおりに機能しますが、使用しようとするContent-Type: multipart/form-data; boundary=-----NPRequestBoundary-----; charset=UTF-8
と $_FILES 配列が完全に空白になります。
PHPまたはWebサーバーの問題ですか?私が知っているように、この形式Content-Type
は有効です。
3 に答える
Content-Type
はであるためmultipart/form-data
、これは部品から構築され、すべての部品が独自の を持つことができることを意味しContent-Type
ます。charset パラメータはtext/plain
content-type でのみ使用されます。したがって、multipart/form-data
コンテンツタイプでは意味がありません。
SVN rev でバグが修正されました。#316373 (5.3.9 リリースでカバー)。
この問題の汚い回避策を見つけました。私にとっては、ライトスピードでは機能しない一時的なbcsです(この問題を回避するために、apacheにリバースプロキシを使用しました)。
<Location "/upload.php">
RequestHeader set Content-Type "multipart/form-data; boundary=-----NPRequestBoundary-----"
</Location>
Web サーバーに content-type ヘッダーを強制的に置き換えます。今のところ確信しています - これは PHP のバグです (誰かが charset が以前に発生すると仮定しましたboundary=
)