phpのget_headersについて


$headers = get_headers($url)の$url部分に存在しないURLを指定した場合に、
$headers[0]に'HTTP/1.1 500 Internal Server Error'が帰ってくると思っていますが、全く反応がありません。(falseもなにも帰ってきません)
「存在する」ドメインの「存在しない」ファイルを指定すると'HTTP/1.1 404 Not Found'が帰ってくることは確認しました。

何か憶え違いをしているのであればご指摘をお願いしたいと思います。
ちなみにメールフォーム内で相互リンクを入力する部分があり、入力の判定の一部でget_headers()を使っています。

回答の条件
  • 1人5回まで
  • 登録:
  • 終了:2014/01/16 08:50:03
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答0件)

回答はまだありません

  • id:Lhankor_Mhy
    存在しないドメインにリクエストを出しているなら、どんなステータスコードであれ、それを返してくるべきサーバも存在しないはずではないでしょうか?
  • id:khaie
    (笑)…ですよね。
    であるとすると、URLの形式にはなってはいるけれど、打ち間違えて入力した存在しないURLを訂正していただくには、どうしたらよいのでしょう。
    何も帰ってこないことを、「不存在」?の証拠しても大丈夫なのでしょうか。

  • id:khaie
    あ、falseは帰ってこないのでしょうか。
  • id:Lhankor_Mhy
    http://babyp.blog55.fc2.com/blog-entry-885.html
    ↑この記事ですとヘッダを取得する前にDNSのチェックをしているようですね。
  • id:khaie
    Lhankor_Mhy様
    ありがとうございます。組み合わせが必要なようですね。

    Lhankor_Mhy1様のコメント内容で先に進むことにしました。
    ポイントを差し上げたいので、回答欄に入力お願いします。

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません