ajaxのアクセスしか許可していないサイトへPHPでアクセスする方法
ajax通信する際、ブラウザが自動でヘッダーに下記を付与するため、
一般的には下記がヘッダーに含まれているかどうかでajaxによる通信かどうかを判断する。
X-Requested-With:XMLHttpRequest
なのでphpで上記のヘッダーを偽装してしまえばajax通信でなくともアクセス可能となる。
$context = stream_context_create(array( "http" => array( 'method' => 'POST', 'header' => implode("\r\n", array( 'X-Requested-With:XMLHttpRequest', )), 'content' => http_bulid_query(array( 'foo' => 'bar', 'hoge' => 'fuga', )), ) )); $res = file_get_contents('http://sample.jp', false, $context);