Не удается запустить сайт в IIS (использование другим процессом)

Когда я пытаюсь запустить сайт в IIS, он говорит:

процесс не может получить доступ к файлу, потому что он используется другим процессом

Я искал в Google и обнаружил, что другой сайт, возможно, использовал порт 80, но в MyIIS. Я вижу, что только этот сайт использует порт 80. Что еще может использовать порт 80 или есть ли другая проблема?

Ответ 1

проверить с помощью netstat -aon в командной строке, чтобы узнать, какой идентификатор процесса ПРОСЛУШАТЬ к порту: 80, а затем посмотреть этот идентификатор процесса в диспетчере задач с представлением → select columns- > id процесса, завершите этот процесс перезагрузкой iis, и все будет готово. Примечание: если у вас установлено skype, попробуйте выйти из этого первого

Ответ 2

Это происходит потому, что другой процесс использует порт 80, это может быть приложение чата на вашем ПК, например, Skype.

Сначала измените порт веб-сайта по умолчанию, который был 80, на какой-то неиспользуемый порт (например, 8087). Для этого щелкните правой кнопкой мыши приложение и нажмите "Изменить привязку".

enter image description here

enter image description here

После перезапуска этого порта снова перезапустите. Теперь вы можете определить, какой процесс блокирует порт IIS 80. Чтобы проверить это, используйте команду netstat, которая отображает детали порта вместе с идентификатором процесса.

Ответ 3

Выйдите из Skype и повторите попытку. Я испытал ту же проблему, и я только что вышел из Skype, а затем reset мой IIS. Это сработало для меня.

Ответ 4

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

netstat -o -n -a | findstr 0.0: 80

Затем откройте диспетчер задач, перейдите в "Процессы", установите флажок "Показывать процессы для всех пользователей", затем щелкните меню "Вид" и "Перейти в столбцы", добавьте столбец PID.

Сопоставьте идентификатор процесса с командой netstat с PID в диспетчере задач, и вы найдете сервис или приложение, использующее порт.

Ответ 5

Я думаю, что эта ссылка дает довольно хорошее объяснение и исправление этой проблемы http://support.microsoft.com/KB/890015

В большинстве случаев; это вызвано одной из двух причин: 1) порт 80 используется кем-то другим, и, как было предложено другими, вы можете использовать netstat -o -n -a | findstr 0.0: 80, чтобы узнать, так ли это. Если да, то запустите процесс из диспетчера задач (отметьте все процессы от всех пользователей)

2), если порт 80 не используется, вторая причина потенциально является недопустимым IP-адресом в ListenOnlyList, зарегистрированном в разделе реестра HTTP- > Parameters. Если вы перейдете по ссылке, чтобы установить ключ вручную или на самом деле вы можете использовать (xp и server 2003) httpcfg delete iplisten -i ipaddress для удаления неверного IP-адреса. Вы должны перезапустить http после редактирования ipaddress!

Ответ 6

Как говорили другие, что-то еще может использовать порт 80 или 443. Для меня это был VMWare Workstation Server, но проверьте другие ответы о том, как использовать netstat.

Ответ 7

В моем случае это была "" Служба синхронизации" (SyncShareSvc), которая была запущена и использовала порт 80. netstat показал 80 как бесплатный. Я мог бы заставить сайт работать на другом порту, но не на 80. Если бы я добавил имя хоста, IIS разрешил бы мне запустить сайт, но я бы получил запрос на проверку дайджеста при просмотре на localhost (или любое имя хоста я добавлено). В IIS были включены только анонимные и Forms Auth...

Я также обнаружил, что после остановки IIS http://localhost все еще запрашивал меня для проверки Digest.

Решение - в моем случае - было удалить Службы файлов и хранилищ > Файлы и службы iSCSI > "Рабочие папки" из установленных служб (требуется перезагрузка).

После удаления службы "Рабочие папки" и перезагрузки IIS работал должным образом.

Ответ 8

Мое дело было после установки RD Web Access, исходные сайты по умолчанию не могли быть запущены. Убрана роль веб-доступа RD по-прежнему. Удаленное связывание порта 443 решило проблему.

Ответ 9

В большинстве случаев, когда это происходит с веб-разработчиками, это причина apache, поэтому, если вы перейдете в конфигурационный файл из apache! откройте его и выполните поиск с помощью ctrl + f до 80 и измените ip, который вы увидите на 8080, и предложение под ним с 80 до 8080, и вам нужно сконфигурировать это в xampp, или программа u использует в настоящее время

Надеюсь, что я помогу вам ребятам из