Рейтинг:0

Nginx отправляет искаженные байты на любой запрос

флаг cn

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

и ¿½ ����������������

см. это для моего nginx.conf. И это для моей конфигурации сайта. Честно говоря, я даже не знаю, с чего начать с этого. В журнале доступа ничего нет, и в журнале ошибок ничего нового. У меня так мало информации.

Я попытался удалить автоиндексацию из конфигурации сайта и поместить index.html в корень веб-сайта, но это все. Ничего другого на самом деле не приходит в голову.

флаг cn
забыл добавить ссылки.Сожалею! Вот и мы.
djdomi avatar
флаг za
пожалуйста, никогда не используйте pastebin для отображения вашей конфигурации, вставьте их сюда напрямую
флаг cn
@djdomi аааа, извините, я думал, что будет раздражать, если в посте будет куча настроек. Я сохранил все комментарии и прочее, так что это довольно долго
флаг us
Проблема с размещением критических вопросов на сторонних сайтах заключается в том, что они могут исчезнуть в любой момент, что сделает вопрос неполным в будущем.
Рейтинг:0
флаг us

В вашей конфигурации есть такие строки:

сервер {
    слушать 80 http2;
    слушать [::]:80 http2;

Это означает, что вы говорите nginx обслуживать контент с использованием HTTP/2 через порт 80. Поскольку браузеры не имеют информации о том, что ваш сервер использует HTTP/2 через порт 80, они подключаются к порту с помощью HTTP и не понимают. ответ.

Вам нужно использовать

сервер {
    слушать 80;
    слушать [::]:80;

в вашем конфиге.

флаг cn
Почему браузер не знает, что сервер использует http/2? Как обычно рассказывают?
флаг us
Порт 80 выделен для протокола HTTP1. Когда браузер подключается к порту 80, он всегда ожидает сервер на основе HTTP1. Между тем, соединения TLS осуществляются через порт 443, и существует механизм (ALPN), позволяющий узнать, что находится внутри зашифрованного соединения. Поэтому браузер может запрашивать HTTP или HTTP/2 с сервера во время рукопожатия TLS. Это означает, что HTTP/2 проще всего реализовать через TLS.
флаг cn
О, и вот почему мои другие сайты работали, на них уже был настроен TLS. Ладно спасибо большое!!

Ответить или комментировать

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