Использование IIS Express для размещения веб-сайта (временно)



У меня есть сайт (MVC3), который для разработки размещается в IIS Express. (Я столкнулся с ошибкой Cassini Devserver и должен был обновить...)
Теперь мне интересно, можно ли позволить другим машинам в моей локальной сети (за маршрутизатором) видеть сайт, размещенный на моей машине? (например, если я пишу http://my.местный.ip: порт в браузер в той же локальной сети, что и я, Будет ли загружаться страница?)

651   6  

6 ответов:

по умолчанию IIS Express обслуживает только запросы localhost. Для обслуживания внешних запросов edit (расположенном в %userprofile%\documents\iisexpress\config\) и изменения localhost до '*' или имя Вашего компьютера. (помните, для некурящих имя localhost привязка должна быть запущена от имени администратора или установить URL-адрес списка управления доступом в качестве администратора и запустите iisexpress не от имени администратора)

кроме того, вы можете использовать что-то вроде PortMapper AnalogX чтобы выступать в качестве небольшой петлевой прокси для туннель частный localhost привязал порты к открытым портам.

например,

  • IISExpress локально привязан к localhost: 8080
  • PortMapper порт 9090 настроен для ретрансляции трафика на localhost: 8080

эффективно, любое соединение на порту 9090 (открыт PortMapper) будет направляться к localhost: 8080; таким образом, обходя все netsh глупости, которые могут быть боль иногда.

ниже моя конфигурация:

PortMapper configuration

преимущество использования этого метода проксирования заключается в том, что он не постоянно предоставляет open IISExpress порт на поле локального разработчика.

редко бывают случаи, когда я хочу открыть порт публично для встреч; но большую часть времени порт должен быть закрыт и доступен только localhost. Изменение правил брандмауэра на маршрутизаторе каждый раз является болью. Вот как у меня все настроено:

  • мой брандмауэр маршрутизатора вперед 9090 порт PortMapper
  • PortMapper только продолжает проксировать трафик IISExpress (слушать на 8080) только если PortMapper работает.

Примечание

убедитесь, что закрыть все PortMapper windows для любых изменений, которые вступят в силу.

примечание 2.

Как описывали другие, вам может потребоваться настроить IISExpress горячие клавиши для приложения

 My Documents\IISExpress\applicationhost.config
 project\.vs\config\applicationhost.config

что-то вроде:

<bindings>
  <!-- bindingInformaiton format:
          IPToBindTo:Port:DNSHostName -->

  <!--OLD:
  <binding protocol="http" bindingInformation="*:8080:localhost"/>-->

  <!--Change '*' to 127.0.0.1 and remove 'localhost' right of the port number
      to avoid invalid DNS hostname errors -->
  <binding protocol="http" bindingInformation="127.0.0.1:8080:" />

</bindings>

Я полагаю, что есть три шага, чтобы сделать это успешным:

1) добавьте запись dns или записи хостов, чтобы другие машины могли искать ip-адрес машины dev

2) Добавьте привязку к applicationhost.config в %userprofile / documents/IISExpress / Config вот так

<site name="MobileDashboard(2)" id="7">
                <bindings>
                    ...
                    <binding protocol="http" bindingInformation="*:yourport#:yourmachinendnsname" />
                </bindings>
            </site>

3) выполнить команду нашел здесь, чтобы разрешить входящие запросы:

netsh http add urlacl url=http://yourmachinendnsname:yourport#/ user=everyone

ответ в этом потоке велик, он просто оставляет исключения брандмауэра.

netsh advfirewall firewall add rule name="IIS Express (non-SSL)" action=allow protocol=TCP dir=in localport=8000

netsh advfirewall firewall add rule name="IIS Express (SSL)" action=allow protocol=TCP dir=in localport=44300

получены из комментариев @ http://blogs.iis.net/vaidyg/archive/2010/07/29/serving-external-traffic-with-webmatrix-beta.aspx

Пользовательское правило трюк в скрипач из http://blogs.microsoft.co.il/blogs/shair/archive/2008/12/15/how-to-use-fiddler-on-localhost.aspx работал на меня в конце концов.

да вы можете настроить как можно больше сайтов с помощью iis express для использования в локальной сети вот ссылка доступ к локальным сайтам из локальной сети IIS Express, которые объясняют, как этого добиться.

Comments

    Ничего не найдено.