У меня свежая установка VPS от моего провайдера (Windows 2008 R2, IIS 7.5).
Веб-сайт по умолчанию работает нормально: http://5.9.251.167/
я создал новый веб-сайт и привязал http://new.ianquigley.com
на этом сервере и везде, где домен сопоставляется с IP-адресом. (например, ping new.ianquigley.com).
Я создал подпапку c:\inetpub\wwwroot\com.ianquigley
и создал файл HTML index.html
с содержанием " <html>cake</html>
"
Документ по умолчанию для веб-сайта index.html
На сервере в Chrome я захожу на страницу http://new.ianquigley.com/index.html и получаю сообщение об ошибке 404.
Страница говорит;
HTTP Error 404.0 - Not Found
The resource you are looking for has been removed, had it's name changed,
or is temporarily unavailable.
Detail:
Module: IIS Web Core
Notification: HttpRequestHandler
Handler: StaticFile
Error Code: 0x80007002
Request URL: http://new.ianquigley.com/index.html
Physical path: c:\inetpub\wwwroot\com.ianquigley\index.html
Logon Method: Anonymous
Logon User: Anonymous
Failed Request Log: c:\inetpub\logs\FailedRequestLog
Физический Путь существует. Папка wwwroot
и com.ianquigley
оба имеют разрешения «Все» и «Чтение».
c:\inetpub\wwwroot\logfiles\w3svc2\u_ex130201
Файл содержит запрос на index.html с кодом 404 ошибки.
обновление (из комментария ниже)
Я создал c:\cake
с правами «Все» «Полный доступ». Переместил туда мой файл index.html и изменил отображение в IIS. Проверка страницы в браузере на сервере снова дает мне то же, что и выше, за исключением того, что физический путьc:\cake\index.html
Обновление 2 Веб-сайт по умолчанию (который работает нормально / может читать с диска) работает в «DefaultAppPool», который первоначально использовал учетную запись «ApplicationPoolIdentity». Новый веб-сайт также использует этот же пул приложений. Я попытался изменить учетную запись на; NetworkService, LocalService и LocalSytem (обновляя пул приложений каждый раз) .. все равно не радость!
Журнал W3SVC2
#Software: Microsoft Internet Information Services 7.5
#Version: 1.0
#Date: 2013-02-02 20:00:02
#Fields: date time s-ip cs-method cs-uri-stem cs-uri-query s-port cs-username c-ip cs(User-Agent) sc-status sc-substatus sc-win32-status time-taken
2013-02-02 20:00:02 5.9.251.167 GET /index.html - 80 - 5.9.251.167 Mozilla/5.0+(Windows+NT+6.1;+WOW64)+AppleWebKit/537.17+(KHTML,+like+Gecko)+Chrome/24.0.1312.57+Safari/537.17 404 0 2 1151
sc-win32-status: 2
Означает «файл не найден». Так что это, вероятно, просто проблема с правами доступа к файлам. Если это так, то почему веб-сайт по умолчанию может читать из c:\inetpub\wwwroot
папки успешно, но не из подпапки с разрешения.
Прямо сейчас я полностью в тупике.
источник
c:\inetpub\wwwroot\com.ianquigley
? Вы пытались переместить сайт в физическую папку за пределами inetpub и вместо этого сопоставить веб-сайт IIS с этой папкой?AppPoolIdentity
, попробуйте изменить его наNetworkService
Ответы:
Facepalm
Новая коробка VPS, означает поведение по умолчанию. т.е. "Скрыть расширения типов файлов для известных типов". Когда я отключил это, я обнаружил, что мой файл на самом деле был назван
index.html.txt
. Переименовал его вindex.html
и проблема решена.источник
Убедитесь, что на веб-сервере установлены «Общие функции HTTP». Вы можете использовать Диспетчер серверов -> Роли -> Веб-сервер -> Службы ролей, чтобы проверить и установить, если это не так.
источник