私は最近、ほぼすべての外部コンテンツにプロトコルのない URL を積極的に使用しており、すべてがうまく機能しています。最近、サーバーからすべての 404 のアラートを受け取り始めることにしましたが、「//」を含む外部コンテンツへのリンクに関係するエラーが突然殺到しました。
$_SERVER の出力は次のとおりです。
["REDIRECT_URL"]=>
string(46) "/www.googleadservices.com/pagead/conversion.js"
["GATEWAY_INTERFACE"]=>
string(7) "CGI/1.1"
["SERVER_PROTOCOL"]=>
string(8) "HTTP/1.1"
["REQUEST_METHOD"]=>
string(3) "GET"
["QUERY_STRING"]=>
string(0) ""
["REQUEST_URI"]=>
string(47) "//www.googleadservices.com/pagead/conversion.js"
["SCRIPT_NAME"]=>
string(10) "/index.php"
["PHP_SELF"]=>
string(10) "/index.php"
["REQUEST_TIME"]=>
int(1373437449)
私は Zend Framework MVC を実行しているので、処理のためにすべてが index.php にルーティングされるはずですが、外部のものは問題なくロードされます。これらのリンクを含むページに移動しても、firebug を介してエラーはスローされませんが、上記のように単一のスラッシュ「REDIRECT_URL」にリダイレクトすると、エラーが殺到します。
これは次のことを意味します: //www.googleadservices.com/pagead/conversion.js
/www.googleadservices.com/pagead/conversion.js にリダイレクトされます。
これは本当に意味します: http://www.mydomain.com/www.googleadservices.com/pagead/conversion.js エラーに変わります: 例外情報 - メッセージ 無効なコントローラーが指定されました (www.googleadservices.com)
サイトは機能しており、目に見える問題は実際には何もないので、バックグラウンドでなぜこれが起こっているのか、他の誰かがそのようなことを見たことがあるかどうかに興味がありました.