Консультация № 63880
23.11.2006, 15:49
0.00 руб.
0 8 3
Здраствуйте. Помогите разобраться с ситуацией. Есть малая локальная сеть (офисная). На сервере (он же шлюз) запущен IIS 6.0 из поставки Windows 2003. Задача: создать локалный сайт для внутренних информационных нужд + отладка скриптов, т.к. у хостера аналогичная картина (в смысле сервера). Проблема:
1. не могу создать более одного сайта (на все адреса типа 127.0.х, кроме 127.0.0.1 пишет Bad Request (Invalid Hostname), в адресной строке задаю IP)
2. Единственный работающий сайт доступен только с localhost (127.0.0.1, естествено). При обращении с других машин получаю ошибку 400. Во всех инструкциях и справках, какие нашел "четкая" рекомендация "используйте мастер". Пробовал - нет эффекта. Кто-нибудь, посоветуйте нормальную литературу (на русском). Или подскажите, что делать.
PS: скрипты php работают.

Обсуждение

Неизвестный
23.11.2006, 16:24
общий
это ответ
Здравствуйте, Бутузов Сергей Евгеньевич!

1. Как вариант, можно прописать для других сайтов другой порт. Тогда можно будет обращаться по адресу http://hostname:portnumber. Стандартно номер порта 80, задается на вкладке properties->web site
2. На сайте MS (http://support.microsoft.com/kb/318380/ru) ошибка 400 обозвана как "неверный запрос", а у Word Wide Web Consortium (http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10) есть рояснение: "The request could not be understood by the server due to malformed syntax. The client SHOULD NOT repeat the request without modifications". То есть IIS запрос принял (иначе код ошибки был бы другой), но не смог его понять по причине неправильного синтаксиса. Что-то в запросе не то.
Неизвестный
23.11.2006, 16:25
общий
а другие адреса не loopback назначить не пробовали?
Неизвестный
23.11.2006, 17:48
общий
это ответ
Здравствуйте, Бутузов Сергей Евгеньевич!
Ситуация такая: один сайт - один IP (как система будет знать какой сайт отдавать на запрос?)
Как вариант другой сайт «вешается» на другой порт 8080 например. Тогда будет обращение ко второму сайту будет http://saite.com:8080
Еще вариант: прописать на машине второй IP и на него "повесить" второй сайт. (думаю что так будет правильнее).
Неизвестный
23.11.2006, 18:02
общий
это ответ
Здравствуйте, Бутузов Сергей Евгеньевич!

Во-первых из сети надо обращаться к серверу по внутреннему айпи адресу (например если у сервера айпи 192,168,0,1, то в браужере надо писать http://192.168.0.1/ а не http://127.0.0.1/
Во-вторых, чтобы работать одновременно с несколькими сайтами надо создавать "Виртуальные каталоги", как их создать прочитайте здесь: http://www.codenet.ru/webmast/iis/htm/core/iicodirv.php
Далее вы через сеть будете обращаться к нужному каталогу по ссылке вида http://192.168.0.1/ИМЯ_КАТАЛОГА/

Удачи! С вопросами в мини-форум!
Неизвестный
23.11.2006, 18:05
общий
Ну и в догонку, по адресу http://www.codenet.ru/webmast/iis/iis.phpВы найдете все ответы на вопросы по администрированию и настройке IIS
Неизвестный
24.11.2006, 08:13
общий
Спасибо всем, откликнувшимся. Я, кажется, не очень точно описал ситуацию.В браузере на сторонней машине указывается IP локального сервера (что вполне естественно). На самом сервере этому узлу присвоены 2 IP: 192,168,0,1 и 127,0,0,1 (первый - основной, второй указан во вкладке "дополнительно"). Веб-узлу для отладки скриптов пытался присвоить IP 127,0,0,2 (в Apache 2.0.52 это работало без проблем), результат описал в первом вопросе. Основной сайт доступен только по 127,0,0,1 (с какой машины, думаю, понятно), с остальных - ошибка 400. Что может быть не так с запросом, не знаю. Писал: http://192.168.0.1. В логе веб-узла я этих обращений даже не наблюдаю. Что может быть не так в запросе? Стандартный ie6 потом 7.
Неизвестный
24.11.2006, 10:56
общий
Дело в настройках безовасности сервера.Во-первых, проверьте установленные файрволы (В том числе и брендмауэр винды) и разрешите порты 80 и 8080, а также 21 для фтп.Во-вторых. Посмотрите на странице безопасности самого IIS какие стоят настройки и соответственно подкорректируйте их.
Неизвестный
24.11.2006, 12:12
общий
Порты разрешены. В настройках безопасности IIS разрешен анонимный доступ и запрещены запросы с адресов, отсутствующих в локальной сети.Проблема трансформировалась. При обращении с удаленных машин по заголовку узла страница открываается. Но при попытке обратиться ко второму узлу, висящему на том же IP, открывается страница основного сайта (по умолчанию он не задан). Или это все могло застрять в кеше браузеров? Я в них уже запутался, все три ведут себя по разному.PS: Вычистил кеш - браузеры пришли к единому мнению. Когда в каталоге лежит файл index.php они все показывают стартовую страницу первого узла. Если расширение файла изменить или удалить файл. Передается htm-страница или отображается содержимое каталога, соответственно. Логику в таком поведении IIS я лично обнаружить не могу. Подскажите, кто знает, что происходит?
Форма ответа