Что за папка inetpub и как её удалить в Windows 10
В Windows 10 можно столкнуться с тем, что на диске C находится папка inetpub, которая может содержать вложенные папки wwwroot, logs, ftproot, custerr и другие. При этом начинающему пользователю не всегда ясно, что это за папка, для чего нужна, а также почему её не получается удалить (требуется разрешение от Система).
В этой инструкции подробно о том, что это за папка в Windows 10 и как удалить inetpub с диска, не повредив при этом ОС. Папку можно также встретить и на более ранних версиях Windows, но её назначение и способы удаление будут теми же.
Назначение папки inetpub
Папка inetpub — это папка по умолчанию для служб Microsoft Internet Information Services (IIS) и содержит вложенные папки для работы сервера от Майкрософт — например, в wwwroot должны находиться файлы для публикации на веб-сервере по http, в ftproot — для ftp и т.д.
Если вы вручную устанавливали IIS каких-либо целей (в том числе может устанавливаться автоматически со средствами разработки от Майкрософт) или создавали FTP-сервер средствами Windows, то папка используется для их работы.
Если же вы не знаете, о чем идет речь, то вероятнее всего, папку можно удалить (иногда компоненты IIS бывают автоматически включены в Windows 10, хотя и не требуются), но сделать это требуется не простым «удалением» в проводнике или стороннем файловом менеджере, а используя следующие шаги.
Как удалить папку inetpub в Windows 10
Если попробовать простое удаление этой папки в проводнике, вы получите сообщение о том, что «Нет доступа к папке, вам необходимо разрешение на выполнение этой операции. Запросите разрешение от Система на изменение этой папки».
Однако удаление возможно — для этого достаточно удалить компоненты «Службы IIS» в Windows 10 штатными средствами системы:
- Откройте панель управления (можно использовать поиск на панели задач).
- В панели управления откройте «Программы и компоненты».
- Слева нажмите «Включение и отключение компонентов Windows».
- Найдите пункт «Службы IIS», снимите все отметки и нажмите «Ок».
- По завершении перезагрузите компьютер.
- После перезагрузки, проверьте, исчезла ли папка. Если нет (в ней могут остаться, например, журналы в подпапке logs), просто удалите её вручную — в этот раз ошибок не будет.
Ну и в завершение еще два момента: если папка inetpub есть на диске, Службы IIS включены, но они не нужны для работы какого-либо ПО на компьютере и никак не используются, их лучше отключить, так как серверные службы, запущенные на компьютере — потенциальная уязвимость.
Если же после отключения Internet Information Services какая-то программа перестала работать и требует их наличия на компьютере, вы сможете включить эти компоненты тем же способом в «Включение и отключение компонентов Windows».
А вдруг и это будет интересно:
- Лучшие бесплатные программы для Windows
- Компьютер не видит внешний диск — как исправить?
- TakeOwnershipEx — получение полного доступа к папкам и файлам и восстановление прав по умолчанию
- Ошибка 0x8007000d в Windows 11 или 10 — как исправить?
- Недопустимая конфигурация приложения в Steam — варианты решения
- Ошибка при запуске приложения 0xc0000006 — как исправить?
- Windows 11
- Windows 10
- Android
- Загрузочная флешка
- Лечение вирусов
- Восстановление данных
- Установка с флешки
- Настройка роутера
- Всё про Windows
- В контакте
- Одноклассники
-
Константин 05.09.2018 в 15:09
- Anonimus 22.04.2020 в 05:02
Wwwroot что за папка
Данное руководство устарело. Актуальное руководство: Руководство по ASP.NET Core 7
Последнее обновление: 02.11.2019
Для определения пути хранения статических файлов в проекте используются два параметра ContentRoot и WebRoot . Статические файлы должны располагаться в каталоге ContentRoot/WebRoot . По умолчанию «ContentRoot» представляет каталог текущего проекта, а «WebRoot» по умолчанию представляет каталог wwwroot . То есть если использовать значения по умолчанию, то статические файлы следует располагать в папке «wwwroot», которая должна находиться в текущем проекте. Но естественно эти параметры можно переопределить.
В разных типах проектов ASP NET Core данная папка может уже быть по умолчанию в проекте, а может отсутствовать. Например, в проекте по типу Empty данная папка отсутствует, поэтому ее надо добавлять вручную.
Итак, возьмем проект по типу Empty и добавим в него новую папку wwwroot . Далее добавим в папку wwwroot новый файл index.html . Для его добавления нажмем на wwwroot правой кнопкой мыши и далее в контекстном меню выберем Add ->New Item . Затем в окне добавления нового элемента найдем шаблон для html-файлов:
Структура проекта после добавления папки и файла index.html:
Изменим код файла index.html, например, следующим образом:
ASP.NET Core Статические файлы в ASP.NET Core
Но чтобы приложение могло бы отдавать статические файлы клиенту, нам надо добавить в конвейер обработки запроса в методе Configure() класса Startup компонент middleware в виде метода расширения UseStaticFiles() :
using Microsoft.AspNetCore.Builder; using Microsoft.AspNetCore.Hosting; using Microsoft.AspNetCore.Http; using Microsoft.Extensions.Hosting; namespace HelloApp < public class Startup < public void Configure(IApplicationBuilder app) < app.UseStaticFiles(); // добавляем поддержку статических файлов app.Run(async (context) =>< await context.Response.WriteAsync("Hello World"); >); > > >
Теперь, если мы обратимся к добавленному файлу, например, по пути http://localhost:58666/index.html , то нам отобразится содержимое данной веб-страницы:
По всем остальным запросам браузер выводил бы строку «Hello World».
Если бы index.html находился бы в какой-то вложенной папке, например, в wwwroot/html/ , то для обращения мы можем использовать следующий запрос: http://localhost:58666/html/index.html
Изменение пути к статическим файлам
Что делать, если нас не устраивает стандартная папка wwwroot. И мы, к примеру, хотим, чтобы все статические файлы в проекте находились в папке static . Для этого добавим папку static в проект, и затем в ней определим какой-нибудь html-файл. Пусть он будет называться content.html :
Чтобы приложение восприняло эту папку, изменим код создания хоста в файле Program.cs:
using Microsoft.AspNetCore.Hosting; using Microsoft.Extensions.Hosting; namespace HelloApp < public class Program < public static void Main(string[] args) < CreateHostBuilder(args).Build().Run(); >public static IHostBuilder CreateHostBuilder(string[] args) => Host.CreateDefaultBuilder(args) .ConfigureWebHostDefaults(webBuilder => < webBuilder.UseStartup(); webBuilder.UseWebRoot("static"); >); > >
Для объекта IWebHostBuilder определен метод UseWebRoot() , который позволяет переопределить папку.
И после этого мы также сможем обращаться к статическим файлам, только теперь они будут браться из папки static, а не из wwwroot.
Wwwroot из соседней сборки
Есть проект, который содержит компоненты, стили, картинки, хост-страницу, App.razor и все остальные части фронтэнда.
Есть отдельный проект, являющийся self-host-проектом, в котором настраиваются все параметры хоста и в который подключается проект с фронтэндом (прямой ссылкой на проект в соседнем каталоге).
Всё работает, кроме ‘wwwroot’, который берётся исключительно из хост-сборки и полностью игнорируется в подключенном проекте с фронтэндом. Соответственно, все стили и картинки при запуске не обнаруживаются.
Как правильно реализовать подобное разделение сборок, чтобы:
1. Без ручного шаманства с post/pre-билдом содержимое каталог ‘wwwroot’ бралось из другого проекта.
2. Чтобы wwwroot располагался именно в сборке фронтэнда.
3. И чтобы не пришлось размещать и хост и сам фронтэнд в одном проекте.
Лучшие ответы ( 1 )
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
Ответы с готовыми решениями:
Получить изображение из папки wwwroot
Добрый день, как можно получить в контроллере изображение из папки wwwroot и затем его перевести в.
Нету папки inetpub wwwroot
Помогите с IIS. Установил IIS 8, я так понимаю на диске С должна была создастся папка "inetpub.
Снять ограничения всех директорий в C:/inetpub/wwwroot
Привет При публикации сайта оказалось, что файлы не читаются, из-за проблем с правами. Где.
Как создать новый проект НЕ В c:\inetpub\wwwroot ?
Как создать новый проект НЕ В c:inetpubwwwroot ? 1) Создаю виртуальную директорию в IIS, которая.
3299 / 2340 / 665
Регистрация: 02.08.2011
Сообщений: 6,401
Сообщение было отмечено kotelok как решение
Решение
kotelok, имхо, так или иначе какую-то работу по автоматизации работы надо сделать.
Если не хочется заморачиваться с post/pre билдом, то можно отредактировать .csproj-файл вашего бэк-проекта.
К примеру для структуры папок на картинке внизу в файл проекта можно добавить такие строки:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
> Include="$(ProjectDir)$(FolderName)\**\*.*"/> > > >wwwroot > > Name="CopyDir" AfterTargets="Build"> Directories="$(SolutionDir)WWWRootContainerLibrary\ContainerFolder\$(FolderName)"> > SourceFiles="@(SourceFolder)" DestinationFolder="$(SolutionDir)\WWWRootContainerLibrary\ContainerFolder\$(FolderName)\%(SourceFolder.RecursiveDir)"> > >
Получить изображение из папки wwwroot
Добрый день, как можно получить в контроллере изображение из папки wwwroot и затем его перевести в массив байтов?
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
Ответы с готовыми решениями:
Нету папки inetpub wwwroot
Помогите с IIS. Установил IIS 8, я так понимаю на диске С должна была создастся папка "inetpub.
Получить название файлов с 1-ой папки , со 2-ой папки и вывести. Неправильный вывод
Есть такая задача: получить название файлов с 1-ой папки , со 2-ой папки и вывести название тех.
Wwwroot из соседней сборки
Есть проект, который содержит компоненты, стили, картинки, хост-страницу, App.razor и все остальные.
Как создать новый проект НЕ В c:\inetpub\wwwroot ?
Как создать новый проект НЕ В c:inetpubwwwroot ? 1) Создаю виртуальную директорию в IIS, которая.
114 / 82 / 37
Регистрация: 15.02.2020
Сообщений: 206
Stavrius, если проект ASP.NET Core MVC, То так:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
public class HomeController : Controller { private readonly ILoggerHomeController> _logger; private readonly IWebHostEnvironment _env; public HomeController(ILoggerHomeController> logger, IWebHostEnvironment env) { _logger = logger; _env = env; } public IActionResult Index() { var bytes = System.IO.File.ReadAllBytes(_env.WebRootPath +"/favicon.ico"); return View(); } //.