Я установил глобальный обработчик ошибок в своем приложении ASP.net, используя Log4Net и RollingLogFileAppender, который до сих пор работал довольно хорошо.
Я занимаюсь обновлением до IIS 7 на сервере Windows 2008, и у меня не работает ведение журнала. Я думаю, что возникают ошибки, но ASP.net не имеет разрешений, необходимых для записи в указанную папку. Теперь я обычно просто предоставляю полные права пользователю ASPNET и делаю это, за исключением того, что учетная запись пользователя больше не существует. Также я не могу найти группу пользователей «Все». Я не хочу дурачиться, создавая новые учетные записи пользователей, настраивая олицетворение и т.д. и т.п. Есть ли простое решение?
В моем случае предоставление разрешений на NETWORK SERVICE
было недостаточно. Мне нужно было добавить разрешения для IUSR
пользователь, а также IIS_IUSRS
слишком.
В IIS6 и IIS7 эквивалентом ASP.NET для пользователя ASPNET является пользователь удостоверения пула приложений. По умолчанию это NETWORK SERVICE в IIS7 и идентификатор пула приложений в IIS 7.5+. Вы можете предоставить этому пользователю права доступа к диску, и он будет работать.
«Лучший» способ - создать настраиваемых пользователей для каждого пула приложений и назначить им разрешение на диск, чтобы сайты были изолированы друг от друга и чтобы другие приложения на сервере, использующие сетевую службу, не могли получить доступ к содержимому ваших сайтов. . Однако это суждение, которое вам нужно сделать в вашей ситуации.
Другой пользователь, который вступает в игру, - это анонимный или аутентифицированный пользователь вашего сайта. Это определено в разделе аутентификации -> анонимность вашего сайта. В IIS7 я рекомендую установить это для использования удостоверения пула приложений, если у вас есть только 1 сайт на пул или пока каждый сайт в пуле приложений высоко доверяет друг другу. Тогда вам нужно поддерживать только 1 пользователя на диске.
Мне удалось решить одну из ошибок «доступ запрещен» (на веб-сервере Windows 2008 + установка IIS 7), выполнив следующие инструкции:
Я не уверен, правильно ли это сегодня, но у меня это сработало.
Я надеюсь, что это будет вам полезно для любого пользователя.