Android では、Phonegap を使用しています。
var ft = new FileTransfer();
ft.upload(pic_to_upload, "http://" + app_domain + "/test_phonegap.php/",
success, failure, options);
ドメインを localhost または 127.0.0.1 または 10.0.0.6 (内部 IP) に設定すると機能しますが、Web サイトの実際のドメインを使用すると機能しません。
より具体的には、phpスクリプトが実行されます(サーバーはApacheです)が、 $_REQUEST または $_FILE 変数を見ると、それらは空ですが、localhostではすべて問題なく受信されます。
私はxml/config.xmlに入れました:
<access origin="http://127.0.0.1*"/> <!-- allow local pages -->
<access origin="http://www.domain.com/"/>
ここで、domain.com はリクエストを送信したドメインです。ここでも、リクエストを受け取りますが、$_REQUEST または $_FILE 変数はありません ($_GET および $_POST もありません。これらの変数はすべて空です)。
何がうまくいかないのですか?私は完全に困惑しています。
私が行った他のすべての AJAX リクエストは JSONP であり、問題なく動作しましたが、ファイルのアップロードについては悲しいことに動作しません。
また、先週の Apache のエラー ログには何も表示されていないため、エラー ログにはこれについて何もありません。
助けてくれてありがとう