CURLを介してURLの存在を確認する
参照:http ://www.php.net/manual/en/function.file-exists.php#74469
<?php
function url_exists($url) {
if (!$fp = curl_init($url)) return false;
return true;
}
?>
あなたの疑問によるいくつかのステータスコードと参照
200 OK
リクエストは成功しました。応答とともに返される情報は、要求で使用されるメソッドによって異なります。次に例を示します。
要求されたリソースに対応するGETエンティティが応答で送信されます。
HEAD要求されたリソースに対応するエンティティヘッダーフィールドは、メッセージ本文なしで応答で送信されます。
アクションの結果を説明または含むエンティティをPOSTします。
エンドサーバーが受信した要求メッセージを含むエンティティをトレースします。
201 Created
リクエストが実行され、新しいリソースが作成されました。新しく作成されたリソースは、応答のエンティティで返されるURIによって参照できます。リソースの最も具体的なURIは、Locationヘッダーフィールドによって指定されます。
202 Accepted
リクエストは処理のために受け入れられましたが、処理は完了していません。リクエストは、実際に処理が行われるときに許可されない可能性があるため、最終的に処理される場合とされない場合があります。このような非同期操作からステータスコードを再送信する機能はありません。
203 Non-Authoritative Information
エンティティヘッダーで返されるメタ情報は、オリジンサーバーから利用できる最終的なセットではなく、ローカルまたはサードパーティのコピーから収集されます。提示されたセットは、元のバージョンのサブセットまたはスーパーセットである可能性があります。たとえば、リソースに関するローカルアノテーション情報を含めると、オリジンサーバーが認識しているメタ情報のスーパーセットが生成される可能性があります。この応答コードの使用は必須ではなく、応答が200(OK)の場合にのみ適切です。
204 No Content
サーバーは要求を実行しましたが、エンティティ本体を返す必要はなく、更新されたメタ情報を返したい場合があります。応答には、エンティティヘッダーの形式で新しいまたは更新されたメタ情報が含まれる場合があります。これらのメタ情報が存在する場合は、要求されたバリアントに関連付ける必要があります。
205 Reset Content
サーバーはリクエストを実行し、ユーザーエージェントはリクエストが送信される原因となったドキュメントビューをリセットする必要があります。この応答は、主に、ユーザー入力を介してアクションの入力を実行できるようにすることを目的としています。その後、ユーザーが別の入力アクションを簡単に開始できるように、入力が行われるフォームをクリアします。応答にはエンティティを含めてはなりません(MUSTNOT)。
これを読む
http://www.seocentro.com/articles/apache/http-status-codes.html
http://en.wikipedia.org/wiki/List_of_HTTP_status_codes
http://www.w3.org/Protocols/rfc2616/rfc2616- sec10.html