Возможно ли использовать IIS Express для размещения страниц в сети. Из коробки он может делать localhost, но я пытаюсь привязать его к IP-адресу.Связывание IIS Express с IP-адресом
ответ
думаю есть.
Для этого вам нужно отредактировать applicationhost.config
файл вручную (редактировать bindingInformation «<ip-address>:<port>:<host-name>
»)
Чтобы начать iisexpress, вам необходимы права администратора
для того, чтобы IIS Express, ответ на любой IP-адрес, просто оставьте адресный пробел, то есть:
bindingInformation=":8080:"
Не забудьте перезапустить службу IIS до того, как изменения могут произойти.
IIS Express должен работать как администратор для привязки ко всему, кроме 'localhost'. При запуске с 'VS 2010' запустите' VS 2010' в качестве администратора. –
Я пробовал это делать, но когда я перехожу на http://192.168.1.10:55870/, он автоматически перенаправляет меня на http: // localhost/ – merk
. Примечание для себя: если вы получаете отказ в доступе, ** Запустите Visual Studio в качестве администратора **. – nVentimiglia
Изменить bindingInformation=":8080:"
И помните, чтобы отключить брандмауэр для IISExpress
Ниже приведены полные изменения мне нужно сделать, чтобы запустить мой x64 бит IIS приложения с помощью IIS Express, с тем чтобы он был доступным для удаленный узел:
iisexpress /config:"C:\Users\test-user\Documents\IISExpress\config\applicationhost.config" /site:MyWebSite
Starting IIS Express ...
Successfully registered URL "http://192.168.2.133:8080/" for site "MyWebSite" application "/"
Registration completed for site "MyWebSite"
IIS Express is running.
Enter 'Q' to stop IIS Express
файл конфигурации (ApplicationHost.config) был добавлен раздел следующим образом:
<sites>
<site name="MyWebsite" id="2">
<application path="/" applicationPool="Clr4IntegratedAppPool">
<virtualDirectory path="/" physicalPath="C:\build\trunk\MyWebsite" />
</application>
<bindings>
<binding protocol="http" bindingInformation=":8080:192.168.2.133" />
</bindings>
</site>
64 разрядной версии платформы .NET может быть включена следующим образом:
<globalModules>
<!--
<add name="ManagedEngine" image="%windir%\Microsoft.NET\Framework\v2.0.50727\webengine.dll" preCondition="integratedMode,runtimeVersionv2.0,bitness32" />
<add name="ManagedEngineV4.0_32bit" image="%windir%\Microsoft.NET\Framework\v4.0.30319\webengine4.dll" preCondition="integratedMode,runtimeVersionv4.0,bitness32" />
-->
<add name="ManagedEngine64" image="%windir%\Microsoft.NET\Framework64\v4.0.30319\webengine4.dll" preCondition="integratedMode,runtimeVersionv4.0,bitness64" />
Отличный подробный ответ. Жаль, что я не смог бы поддержать +50. Я ценю, что у вас были пути туда для applicationHost.config и все подробности. Благодарю. – raddevus
Как уже упоминалось выше, редактировать host.config приложения. Легкий способ найти это - запустить ваш сайт в VS с помощью IIS Express. Щелкните правой кнопкой мыши значок systray, покажите все приложения. Выберите свой сайт, а затем нажмите на ссылку конфигурации внизу, чтобы открыть его.
Я бы предложил добавить еще одну запись с привязкой и оставить там исходный локальный хост. Это дополнительное связывание появится в Systray IIS Express как отдельное приложение под сайтом.
Чтобы избежать необходимости запуска VS в качестве администратора (много причин, чтобы не запускаться как администратор), добавьте правило netsh следующим образом (очевидно, заменив IP и порт вашими значениями) - вам понадобится админ cmd. ехе для этого, нужно только запустить один раз:
netsh http add urlacl url=http://192.168.1.121:51652/ user=\Everyone
Netsh можно добавить правила, как URL = http://+:51652/, но мне не удалось получить это красиво место с IIS Express. Вы можете использовать netsh http show urlacl
, чтобы перечислить существующие правила, и их можно удалить с помощью netsh http delete urlacl url=blah
.
Дополнительная информация: http://msdn.microsoft.com/en-us/library/ms733768.aspx
Tnx для указания того, как найти файл конфигурации –
все было. Скопировал ApplicationHost.config и модифицировал связывания с <обязательного протокола = «HTTP» bindingInformation = «: 8080: » /> –
jdiaz
Вы знаете, если вы можете настроить его для прослушивания «Any IP»? – Alxandr
У меня такая же проблема. Я изменил информацию привязки в соответствии с вашим предложением и перезапустил iis express. Когда я запустил свои веб-проекты из Visual Studio, он по-прежнему будет http: // localhost: yyyy./xxxx. Есть идеи? –