2

Это почему

http://www.google.com:443/

терпит неудачу почти мгновенно, в то время как

http://www.google.com:8080/

занимает больше времени, прежде чем потерпеть неудачу?

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

1 ответ1

6

Google делает пополняемым сервер на порт 443. Если вы перейдете на страницу https://www.google.com или https://www.google.com:443, вы получите обычную страницу поиска Google по протоколу SSL.

Когда вы используете URL http://www.google.com:443, вы говорите браузеру сделать запрос через порт 443, но использовать незашифрованный HTTP. Google настроил свой сервер, чтобы отклонить это и закрыть соединение, так как он ожидает только HTTPS через этот порт.

Однако серверы Google не прослушивают порт 8080. Когда вы делаете запрос на порт 8080, ваш браузер должен ждать тайм-аут, прежде чем он решит, что запрос не выполнен.


Вы можете доказать все это сами, открыв сеанс telnet по адресу www.google.com:443 и попытавшись передать ему незашифрованный HTTP:

[~]$ telnet www.google.com 443
Trying 66.102.7.104...
Connected to www.l.google.com.
GET / HTTP/1.0
Connection closed by foreign host.

Если вы попробуете следующую команду, вы увидите, что вообще не можете подключиться к порту 8080, и время ожидания истекло:

[~]$ telnet www.google.com 8080
Trying 66.102.7.104...
telnet: connect to address 66.102.7.104: Operation timed out

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .