私は従来の ASP に慣れていませんが (これは新しい ASP.NET とは異なります)、ドキュメント構造エラーを作成しているように見えます - 結合されたドキュメントは次のようになります。
<html>
<head>
<title>jh</title>
<link href="JHstyles.css" rel="stylesheet" type="text/css">
</head>
<body>
<head>
<link href="styles.css" rel="stylesheet" type="text/css">
<!--#include file="functions.asp"-->
</head>
<body>
<!-- div content etc. -->
<!--#include file="header-jh.asp"-->
<!-- Table and other content -->
</body>
</html>
head 要素と document 要素が 2 回出現することに注意してください。これは無効です。どのドキュメントでも、head 要素と body 要素は 1 回だけ出現し、head 要素は html 要素の最初の子になります。https://developer.mozilla.org/en-US/docs/HTML/Element/headおよびhttps://developer.mozilla.org/en-US/docs/HTML/Element/bodyを参照してください。
HTML5 には新しいセマンティック要素として body 内のページ ヘッダー コンテンツを表すための新しいheader要素がありますが、head 要素は body の子として、または body を head の子として表示してはなりません。
従来の ASP に最も近い構成である PHP では、通常、doctype、開始 HTML タグ、head 要素全体を含む header.php ファイルを作成します。変数を使用して、ページ タイトルとカスタム スクリプトを渡します。スタイルシート。このアプローチが従来の ASP で機能するかどうかはわかりませんが、概念的には機能しない理由はありません。従来の ASP の経験が豊富な人にアドバイスしてもらう必要があるだけです。
現状では、header.asp ファイルからスタイルシートと functions.asp インクルード参照以外のすべてを削除し、default.asp ファイルの head 内にインクルードを移動するか、head 要素を開始する必要があります。 default.asp で (タイトルを許可するため)、header.asp で終了します (default.asp から終了の head タグと開始の body タグを削除します)。
HTTP 500 エラーに関しては、これはサーバー エラーであり、サーバーが 1 つまたは複数の含まれているファイルを見つけられなかった結果であると予想されます。ファイル functions.asp、header.asp、および header-jh.asp が default.asp と同じディレクトリにあることを確認してください。また、header.asp から先頭の / を削除します。他の言語では、ファイルへの参照は相対的に行われます。たとえば、header.asp ファイルが default.asp の親ディレクトリに含まれていて、Web サイト ドメインのルートへの HTML 相対パスを使用していない場合は、../header.asp などです。
これが役立つことを願っています。