Почему мой браузер пытается загрузить страницы с http://clhs.lisp.se вместо того, чтобы просматривать их как обычно?

Почему мой браузер пытается загрузить страницы с http://clhs.lisp.se вместо того, чтобы просматривать их как обычно?

Эта проблема началась несколько недель назад.

Всякий раз, когда я перехожу на любую страницу в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

Что-то не так с тем, как этот веб-сайт и/или веб-сервер доставляет веб-страницы.

Это не проблема с вашей стороны, а скорее что-то странное на стороне сервера: либо с самим сайтом, либо с сервером, доставляющим веб-контент.

Вместо того, чтобы доставлять контент с заголовками, которые указывают, 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 — который позволит вам принудительно указывать определенные заголовки для такого запроса we.

При этом основной контент этого сайта доступен в других местах в Интернете на сайтах, которые правильно настроены и работают должным образом.

Помимо этого, если вы просто хотите прочитать содержимое этого сайта, а не отлаживать проблему на самом сайте, вы можете получить доступ к тому же содержимому на следующих других сайтах, как указано ниже.комментарий dave_thompson_085 к вопросу:

И, согласно комментарию Дэйва, вторая ссылка на 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

Проблема здесь в том, Тип содержимого поле, описанное как:

приложение

некоторые другие виды данных, обычно либо неинтерпретируемые двоичные данные, либо информация, которая должна быть обработана почтовым приложением. Основной подтип, "octet-stream", должен использоваться в случае неинтерпретируемых двоичных данных, в этом случае простейшим рекомендуемым действием является предложение записать информацию в файл для пользователя.

Двоичный файл не может быть отображен браузером. Поскольку значение Content-Type "application/octet-stream" определяет возвращаемый ответ как двоичный файл, браузер, который подчиняется стандарту, не имеет других возможных действий, кроме как загрузить файл.

IE и Edge никогда не соответствовали стандартам, поэтому Microsoft в настоящее время отказывается от обоих.

решение3

Можешь попробоватьModHeader. После установки вы заходите в корень сайта, нажимаете на значок расширения, затем на знак плюс, заголовок ответа и вводите Content-Type. Приятного просмотра этого сайта.

Вы можете использовать профили внутри расширения, чтобы переключаться только при необходимости. Если вы создадите профиль без каких-либо правил, значок будет отображаться как неактивный, это будет профиль для остального интернета.

Я проверил, и это работает, но будьте осторожны, исходный код не виден, а для изменения заголовков нужны полные права на всех страницах. Вы также можете включить/отключить его из менеджера дополнений Firefox, если необходимо. Подробнееможно найти здесь.

Связанный контент