10 августа 2013 г.

Не запускается сайт на IIS - Исключение из HRESULT: 0x080070020

Давно с этим столкнулся и давно нашел решение.

Создан сайт на IIS, но он не запускается. Появляется сообщение об ошибке от Internet Information Services (IIS) Manager:

The process cannot access the file because it is being used by another process. (Exception from HRESULT: 0x080070020)

Или по-русски:

Процесс не может получить доступ к файлу, так как этот файл занят другим процессом.
(Исключение из HRESULT: 0x080070020)



Что делать?

Сначала удостоверьтесь, что другие запущенные сайты не используют те же порты и мена узлов. Если это исключено, то скорее всего у вас следующее:

Если у вас на этом компьютере запущен Skype, то именно он в создает проблему. Он перехватывает порты 80 и 443 (дефолтные для HTTP и HTTPS). И если ваш сайт использует эти порты, и вы хотите, чтобы он их и использовал,то вам нужно что-то делать со Скайпом.


Решение № 1 - Временно отключите Скайп


Это самое простое и быстрое решение. Вам нужно полностью выйти из Скайпа. Это означает, что вам нужно, не просто выйти из своего профиля (учетной записи, аккаунта), а полностью закрыть Скайп. Опять же не свернуть окно в трей, а именно завершить работу этой программу :)

  1. В области уведомлений Windows, нажмите правой кнопкой мышки на иконке Скайпа.
  2. В меню Скайпа выберите "Выход" и подтвердите вход в диалоговом окне.


После закрытия Скайпа, запустите свой сайт.

И после запуска сайта можно запустить Скайп опять.

Этот способ неудобен тем, что всякий раз, когда вам нужно будет запустить такой сайт, вам нужно будет завершать работу Скайпа. Чтобы этого избежать, смотрите Решение № 2.


Решение № 2 - Запретите Скайпу использовать порты 80 и 443

  1. Эту процедуру вам нужно будет проделать один раз. После этого вам уже не нужно будет завершать работу Скайпа, а потом запускать его опять. Сайты будут запускаться при включенном Скайпе.
  2. В главном окне Скайпа в меню "Инструменты", выберите "Настройки" (Tools / Options).
  3. В окне настроек, откройте вкладку "Дополнительно" и выберите под-вкладку "Соединение" (Advanced / Connection).
  4. Уберите галочку из опции "Использовать порты 80 и 443 в качестве входящих альтернативных" (Use port 80 and 443 as alternatives for incoming connections).
  5. И сохраните настройки - кнопка "Сохранить" (Save).

Изменения вступят в силу только после перезапуска Скайпа. Поэтому полностью перезапустите Скайп, как описано в решении № 1 выше. То есть, завершите работу Скайпа, а затем запустите его опять.

Теперь можете запускать свои сайты с портами 80 и 443. Запущенный Скайп им мешать уже не будет.

2 комментария: