この問題は数週間前に始まりました。
どのページに移動してもhttp://clhs.lisp.se
— たとえばこれ:http://clhs.lisp.se/Body/m_w_open.htm
— ブラウザはページを通常どおり表示せず、代わりにページを HTML ファイルとしてダウンロードしようとします。
この問題は Chrome、Firefox、Brave、Vivaldi、Opera では発生しますが、Internet Explorer や Edge では発生しません。以前はすべてのブラウザで正常に動作していました。
なぜこのようなことが起こるのでしょうか。また、正常に動作させるにはどうすればよいのでしょうか。IE または Edge を使用することはできません。
答え1
ウェブサイトやウェブサーバーがウェブページを配信する方法に問題があります。
これはユーザー側の問題ではなく、Web サイト自体または Web コンテンツを配信するサーバー側で何か問題が発生していることを意味します。
text/html
ウェブブラウザがバイナリデータとして解釈し、ファイルのダウンロードとして処理する必要があるコンテンツであることを示すヘッダー付きのコンテンツを配信する代わりに、application/octet-stream
次の Curl コマンドの出力を見てください。
curl -ILk http://clhs.lisp.se/Body/m_w_open.htm
HTTP/1.1 200 OK
Content-Type: application/octet-stream
Accept-Ranges: bytes
Content-Length: 8896
Date: Sat, 21 Sep 2019 18:41:10 GMT
Server: lighttpd/1.4.45
Firefox や Chrome などの、このようなリクエストに対して特定のヘッダーを強制できる何らかのプラグインがない限り、クライアント側でこれを修正することはできないと思います。
とはいえ、そのサイトのコアコンテンツは、適切に構成され、期待どおりに動作しているインターネット上の他のサイトでも入手できます。
その後、そのサイト自体の問題をデバッグするのではなく、そのサイトのコンテンツを読みたいだけの場合は、次の他のサイトで同じコンテンツにアクセスできます。dave_thompson_085 の質問に対するコメント:
http://www.lispworks.com/documentation/lw50/CLHS/Front/index.htm
http://www.ai.mit.edu/projects/iiip/doc/CommonLISP/HyperSpec/FrontMatter/
そして、デイブのコメントによれば、2 番目の MIT リンクは信頼できるはずです。「私見では、適切なホームです。ケントがそこで働いていた当時、私は彼を知っていました。」
答え2
この面白いウェブサイトは、あなたのページに対して次のヘッダーを含む回答を返します:
HTTP/1.1 200 OK
Content-Type: application/octet-stream
Accept-Ranges: bytes
Content-Length: 8896
Date: Sat, 21 Sep 2019 18:44:55 GMT
Server: lighttpd/1.4.45
ここで問題となるのは コンテンツタイプ フィールドは次のように説明されます:
応用
その他の種類のデータ。通常は、解釈されないバイナリ データまたはメール ベースのアプリケーションによって処理される情報のいずれかです。プライマリ サブタイプ「オクテット ストリーム」は、解釈されないバイナリ データの場合に使用されます。この場合、最も簡単な推奨されるアクションは、ユーザーに情報をファイルに書き込むように提案することです。
バイナリ ファイルはブラウザで表示できません。Content-Type 値 "application/octet-stream" は返される応答をバイナリ ファイルとして定義するため、標準に準拠するブラウザではファイルをダウンロードする以外に実行できるアクションはありません。
IE と Edge は標準に準拠するのがそれほど得意ではなかったため、Microsoft は現在、両方を廃止しています。
答え3
あなたが試すことができますモッドヘッダーインストール後、サイトのルートにアクセスし、拡張機能アイコンをクリックして、プラス記号、応答ヘッダーをクリックし、と入力しますContent-Type
。そのサイトを楽しんで閲覧してください。
拡張機能内のプロファイルを使用して、必要な場合にのみ切り替えることができます。ルールなしでプロファイルを作成すると、アイコンは非アクティブとして表示され、それがインターネットの残りの部分のプロファイルになります。
テストしたところ、動作しました。ただし、ソースコードが見当たらないことと、ヘッダーを変更するにはすべてのページに対する完全な権限が必要なので注意してください。必要に応じて、Firefox アドオン マネージャーから有効/無効にすることもできます。詳細情報こちらからご覧いただけます。