Страница не найдена в IIS, но она есть
Я только что установил IIS на Windows Server 2008. Если я иду в localhost
, страница по умолчанию отображается, так что веб-сервер в порядке.
Я добавил папку со страницей в \inetpub\wwwroot
каталог. Полный путь к странице тогда C:\inetpub\wwwroot\folder\file.html
,
Я перезапустил службы, но если я перейду к localhost/folder/file.html
Я получаю 404 file not found error
,
Очевидно, я забыл что-то простое, но что это?:)
7 ответов
Для тех, кто сталкивается с этим и не считает другие предложения эффективными, также убедитесь, что Windows отображает расширения имен файлов. Откройте проводник Windows, нажмите "Вид" в верхней панели, а затем установите флажок "Расширения имени файла".
Я обнаружил, что мой файл на самом деле назывался index.html.txt, несмотря на то, что он отображал index.html до проверки вышеуказанного параметра.
У меня была такая же проблема.
Соблюдайте свой путь: C:\inetpub\wwwroot\folder\file.html
,
Убедиться, что:
- Расширение имени файла, которое вы запрашиваете (в данном случае
.html
) не блокируется IIS. - Каталоги вдоль пути, который вы запрашиваете (в этом случае
folder
) не блокируются IIS.
Если вы работаете в Windows 8/ Windows 10, вы можете проверить эти две вещи в настольном приложении IIS Manager.
Вот как:
- Откройте диспетчер IIS. Вы можете ввести его в строку поиска Windows.
- В дереве файлов в поле "Подключения" выберите корень веб-приложения.
- В представлении функций, которое появляется в середине экрана, выберите
Request Filtering
, - в
File Name Extensions
вкладка, убедитесь, что.html
не имеет значенияfalse
, - в
Hidden Segments
убедитесь, что ни одна из папок на вашем пути (C:\inetpub\wwwroot\folder\file.html
) перечислены.
ПРИМЕЧАНИЕ. Если вы не видите Request Filtering
инструмент, возможно, вы не включили все функции IIS. Найдите "Отключить функции Windows" на вашем компьютере. В диспетчере компонентов Windows выберите все поля в Internet Information Services -> World Wide Web Services
и выберите коробку Internet Information Services -> Web Management Tools -> IIS Management Consoles
,
Проверьте следующее:
- Найдите конфигурацию аутентификации (анонимная, базовая, Windows,...)
- На основе конфигурации аутентификации убедитесь, что учетная запись, обращающаяся к файлу (анонимный, IUSR, СИСТЕМА, аутентифицированные пользователи,...), имеет достаточные разрешения NTFS.
- Проверьте, не фильтруется ли расширение файла в фильтрации запросов.
- Проверьте, явно ли указано расширение файла в типах MIME.
У меня была эта проблема раньше - мне пришлось снова ввести имя пользователя и пароль при анонимной аутентификации, и она работала отлично. Вы также можете включить подробные ошибки на страницах ошибок в IIS, чтобы получить больше информации.
У меня была такая же проблема и даже больше. Не будут отображаться не только html-страницы, но и изображения. Я заметил, что типы MIME не указаны на моем новом компьютере в настройках IIS, поэтому вошел и добавил все службы, которые смог найти в разделе «Функции Windows для IIS». Я знаю, что это подход дробовика, и один из них отвечает за MIME, но как только я это сделал, все начало работать правильно.
У меня была такая же ошибка. Моя проблема заключалась в том, что я случайно установил другой экземпляр DNN в ту же базу данных SQL. Я восстановил резервную копию своей базы данных в новую базу данных, а затем указал файл конфигурации на новую базу данных. Тогда оба экземпляра работали отлично.
На панели "Соединения IIS" щелкните узел "Узлы" и проверьте столбец "Состояние" справа. В моем случае веб-сайт по умолчанию был остановлен и выдает ошибку 404.