質問

プロジェクト用の単純なHTTPサーバーを構築しています。 ほとんどのWebサイトには、カスタム404エラーページがあります。ただし、Firefoxが一般的な404ページ(または405など)を吐き出すことがあります。 何をすべきかをどのように決定しますか? HTTPレスポンスはどうあるべきですか? 「HTTP / 1.0 404 NOT FOUND」とは十分ですか?

ありがとう

役に立ちましたか?

解決

そのため、ほとんどの場合、Firefoxは一般的な404エラーページを表示しません。 Internet Explorerについて考えています。InternetExplorerは、特定のサイズよりも小さく、独自のWebページを表示する場合、Webサイトの404ページを無視します。

他のヒント

リクエストされたリソース(ウェブページなど)が見つからない場合、サーバーはHTTPヘッダーセクションで HTTP / 1.0 404 NOT FOUND を送信します。

サーバーはこのエラーのエラーページをマッピングできるので、読みやすいエラーページを取得できます。 ブラウザは独自のエラーページをマッピングすることもできます。ブラウザ固有のエラー404メッセージを表示できます。

エラーコードは、ログファイルのステータスフィールドで確認できます。

ユーザーを次の構造の特定のページにリダイレクトする

<HTML>
<head>
<meta HTTP-EQUIV="Refresh" CONTENT="5; URL=not404.htm">
</head>
</HTML>

404エラーページ.comへようこそ

の詳細をご覧ください。

404応答コードでhtml本文を返すことは完全に有効です。本文が指定されていない場合、ブラウザにはデフォルトのページが表示されます。

  1. HTTP / 1.0 404 NOT FOUND のみを送信すると、ブラウザのデフォルトが表示されます。
  2. 応答に本文を追加すると、ブラウザはほとんどそれを使用します。

HTTPサーバーを作成している場合は、プロトコルを説明するRFCをご覧ください。 http://www.faqs.org/rfcs/rfc2616.html

404ステータスコードの場合:

  

サーバーは何も見つかりませんでした   Request-URIに一致します。いいえ
  かどうかの指示が与えられます   条件は一時的または
  永久的。 410(Gone)ステータスコード   サーバーが知っている場合に使用する必要があります。   いくつかの内部構成可能   メカニズム、古いリソースが   永久に利用できず   転送先のアドレス。このステータス   サーバーが一般的に使用されるコード   正確な理由を明らかにしたくない   リクエストが拒否されたとき、または   他の応答は適用されません。

ブラウザが各ステータスコードを処理する方法を制御することはできません。その優れた動作に依存する必要があります。

とはいえ、既存のHTTPサーバーのいずれかを使用することでメリットが得られる場合があります。数日前に投稿されたCまたはC ++でHTTPサーバーを作成する方法については、この質問をご覧ください。

通常はウェブサーバーで設定します。つまり、サーバーが404を取得したら、このページを参照します。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top