Запуск IIS Express без прав администратора

я обновился до iis express 7.5 с VS2010 SP1. В примечаниях к выпуску указано, что express может работать без разрешений администратора. Когда я пытаюсь запустить из командной строки (PowerShell cmd line), я получаю ту же ошибку "отказано в доступе" (показано ниже), я запускался с IIS Express 7.

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

кто - нибудь мог работать без прав администратора?

более подробное сообщение об ошибке есть:

Failed to call HttpAddUrl with http://MACHINE-NAME:80/
Failed to register URL "http://MACHINE-NAME:80/" for site "WebSiteName" application "/". Error description: Access is denied. (0x80070005)

3 ответов


см. здесь, что требует доступа администратора, а что нет, в зависимости от того, что вы делаете с IIS Express: http://learn.iis.net/page.aspx/1003/running-iis-express-without-administrative-privileges/

для выполнения следующих задач требуются права администратора:

* Use a reserved port such as 80 or 443.
* Serve requests for external traffic.
* Configure a custom SSL certificate.
* Run SSL using a port outside the range of 44300 to 44399. 

поэтому, если вы делаете что-либо из вышеперечисленного, потребуется доступ администратора.

это независимо от 7 или 7.5.


также можно запустить IIS Express как не административный пользователь на зарезервированных портах и обслуживать запросы на внешний трафик, но вам нужно настройте службу HTTP, чтобы разрешить это. The команды Netsh для протокола передачи гипертекста (HTTP) страница technet подробно описывает это для машины Windows 7 (также Vista, Server 2008 и т. д.). Как и следовало ожидать, вам необходимо запустить команду конфигурации от имени администратора. Примеры команда для добавления и удаления разрешения:

netsh http add urlacl url=http://YOUR-MACHINE-NAME:80/ user=DOMAINNAME\GroupOrUserName
netsh http delete urlacl url=http://YOUR-MACHINE-NAME:80/

это работает для меня в Windows 7, и хотя я не могу проверить это, я ожидаю Httpcfg.exe: утилита настройки HTTP можно использовать, чтобы разрешить это в более ранних версиях Windows (XP, Server 2003).


откройте CMD как администратор и запустите инструкцию bellow

netsh http add iplisten ipaddress=::