веб-сайт, не показывающий с www префиксом. IIS7

Необходимо локализовать, какая часть не работает. При разрушении "просмотра веб-страницы" в он - соответствующие части:

  1. твердость DNS
  2. соединитесь с IP
  3. получите ответ

Так, сначала необходимо проверить, что DNS решает правильно. Идеально, это должно быть от машины снаружи (я предполагаю, что Вы служите страницам внешним клиентам), Ваша сеть.

Во-вторых, telnet для портирования 80, внутренне сначала. Для меня это:

greeblesnort@greeblesnort:~$ telnet 172.18.1.100 80
Trying 172.18.1.100...
Connected to 172.18.1.100.
Escape character is '^]'.
GET / <<<<<<<<<<<<<<type this and hit <ENTER> twice

HTTP/1.0 301 Found  <<<<<<<<<<<<this, while a "bad" response, *is* a response from the web server

Если это работает (с любым допустимым ответом сервера), то сервер отвечает на том порте. Если Вы хотите, придирчивы, можно использовать:

GET /index.htm HTTP/1.0

замена index.htm с тем, что использует сервер, поскольку это - значение по умолчанию. Это должно возвратить допустимую страницу:

HTTP/1.1 404 Not Found
Content-Type: text/html
Server: Microsoft-IIS/7.0
x-info: result=success;server=web01;build={IIS}
Date: Fri, 18 Sep 2009 21:56:47 GMT
Connection: close
Content-Length: 12579


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
...

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

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

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

править: Ну, если 91.135.5.118 корректное разрешение, то DNS, кажется, прекрасен от обоих серверов имен.

Однако, когда я пробую:

[greeblesnort@fjdx421 greeblesnort]$ telnet www.enfotext.com 80
Trying 91.135.5.118...
Connected to cust118-dsl91-135-5.idnet.net (91.135.5.118).
Escape character is '^]'.
GET /index.htm HTTP/1.0

это испытывает таймаут.

Это обычно заставляло бы меня предложить, чтобы Вы говорили со своим ISP о них потенциально блокирующий входящий порт 80 запросов. Но, который был бы довольно глуп, если они позволяют все те другие порты, которые, кажется, открыты.

Я сделал захват пакетов, только для наблюдения то, что происходило на проводе, и кажется, что сервер на самом деле никогда не завершает квитирование TCP. Это, кажется, получает начальный SYN, возвращает SYN/ACK, я отправляю заключительный ACK, и Ваш сервер продолжает пытаться снова послать SYN/ACK.

Моя ставка перемещается в конфигурацию брандмауэра или в восходящем направлении или на Вашем сервере.

1
задан 13 January 2012 в 13:13
1 ответ

Кажется, что Ваш DNS является проблемой. Вы описываете наличие запись и для www.example.... и для также example.com, а также CNAME, но Вам не должны быть нужны все они. У Вас должна или быть запись для обоих имен, в этом случае, пользователь, поражающий или имя, был бы направлен к сайту IP, или запись для одной и CNAME для другого. Если то, что Вы действительно хотите, должно иметь весь пользовательский хит www....., вводят ли они его или нет, просто устанавливают два, записи (или record/CNAME пара) и на уровне веб-сервера создают перенаправление к тому, так, чтобы любые соединения с example.com были перенаправлены к www.example.com. Самый легкий способ сделать это со вторым веб-сайтом в IIS, но он может быть сделан на том же сайте также.

1
ответ дан 4 December 2019 в 01:50

Теги

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