質問: サーバーはNGINXで、cakephp2.0系をつかったwebシステムを構築していますが、JSONがPOSTされてくるところで、つまづいています。 他者のサーバー(例:49.***.**.***) https://xxx.yyy.com より 自分が使っているサーバー(例:153.***.***.***) 上の http://aaabbb.com/gets/getjson/ へPOSTでJSONが送られてきます。 (ccc/dddの部分はcakephp2系で構築されていますので、 アドレスは上記でも コントローラー /app/Controller/GetsController.php View /app/View/Gets/getjson.ctp があります。 しかしながら、nginxのアクセスログを見ると、 49.***.**.*** - - [10/Jan/2016:14:01:31 +0900] "POST /gets/getjson/ HTTP/1.1" 302 5 "-" "-" "-" となっており、jsonは受け取れていませんし、 PHP側で /gets/getjson/にアクセスがあると cakephpのデバッグログに"aiueo"が出力される仕様にしておきましたが、アクセスが飛んでいる形跡がありません。 一応、ブラウザでhttp://aaabbb.com/gets/getjson/ をアクセスすると正しくアクセスすることはできます。 切り分けのため、https://zzz.com からjsonを投げてみましたが、同様の302エラーが出ており、json送信側の問題ではないことがわかりました。 どのあたりに原因があるか教えて頂ければ幸いです。
回答: クロスドメインであれば JSONP で送信されないといけないと思いますが、その辺りはいかがでしょうか。 送信側のソースを提示していただけると解決が早いかと。