Попытка доступа к сайту по IP или использование ssh -L дает Server 404

995
Iskar Jarak

Я пытаюсь получить доступ к www.fallenlondon.com по его IP-адресу. Однако оба ebz-2-1147703023.eu-west-1.elb.amazonaws.comи 46.137.175.221выдают ошибку сервера: 404.

Я получаю ту же самую проблему, если я делаю, ssh -L *:8080:www.fallenlondon.com:80 me@myremotehostи затем перехожу к localhost:8080(это работает отлично для Google и нескольких других случайных сайтов, которые я попробовал).

Может кто-нибудь объяснить, что здесь происходит? Решение также будет высоко ценится.

Редактировать: Согласно ответу Кайла Джонса, очевидно, это вызвано тем, что информация о доменном имени (желаемое) не включена в заголовок HTTP-узла, как того требует сервер, чтобы устранить неоднозначность и дать мне желаемый результат.

Есть ли какой-то способ убедиться, что заголовок содержит то, что я хочу, в обоих случаях?


Nslookup:

nslookup www.fallenlondon.com Server: 127.0.0.1 Address: 127.0.0.1#53  Non-authoritative answer: www.fallenlondon.com canonical name = ebz-2-1147703023.eu-west-1.elb.amazonaws.com. Name: ebz-2-1147703023.eu-west-1.elb.amazonaws.com Address: 46.137.175.221 

хост:

host www.fallenlondon.com www.fallenlondon.com is an alias for ebz-2-1147703023.eu-west-1.elb.amazonaws.com. ebz-2-1147703023.eu-west-1.elb.amazonaws.com has address 46.137.175.221  host fallenlondon.com fallenlondon.com has address 46.137.122.254 fallenlondon.com mail is handled by 30 aspmx3.googlemail.com. fallenlondon.com mail is handled by 10 aspmx.l.google.com. fallenlondon.com mail is handled by 20 alt1.aspmx.l.google.com. fallenlondon.com mail is handled by 20 alt2.aspmx.l.google.com. fallenlondon.com mail is handled by 30 aspmx2.googlemail.com. 
0

1 ответ на вопрос

2
Kyle Jones

IP-адрес не обязательно уникален для определенного веб-сайта.

В течение многих лет веб-провайдеры использовали заголовок HTTP 1.1 Host для различения веб-сайтов и обслуживания нескольких веб-сайтов с одного IP-адреса. Ваш веб-браузер отправляет заголовок хоста на веб-сервер, сообщая ему доменное имя запрошенного вами сайта, и сервер отвечает правильной страницей. Если вы дадите только IP-адрес, сервер не сможет определить, какой сайт (из многих возможных за IP-адресом) вы хотите. В этой ситуации некоторые сайты возвращают общую страницу, а некоторые возвращают код ошибки в браузер.

Я думаю, вам нужно будет добавить запись для www.fallenlondon.com в / etc / hosts (или любую другую эквивалентную статическую таблицу хостов, которую поддерживает ваша система), которая указывает на 127.0.0.1. Затем вы можете использовать www.fallenlondon.com:8080 для достижения локальной конечной точки вашего туннеля, и заголовок хоста с правильным доменом будет отправлен через туннель ssh и на сервер AWS. Я попробовал это здесь, и это сработало для меня.

Есть ли способ отправить заголовок узла при использовании ssh? Или вместе с IP, в этом отношении? (Да, я думаю, я говорю о подделке заголовка каким-то образом, по крайней мере, в последнем случае ...) Iskar Jarak 11 лет назад 0
@ Искар Я отредактировал ответ, чтобы решить эту проблему. Kyle Jones 11 лет назад 0
Я приму позже сегодня, когда у меня будет шанс проверить это сам. Пожалуйста, извините за паранойю. Iskar Jarak 11 лет назад 0

Похожие вопросы