2010-05-15 3 views
0

У меня есть веб-сайт, размещенный в IIS на место C:/Inetpub/Wwwroot/образецСоздание файла в Wwwroot

и есть папка в образец C:/Inetpub/Wwwroot/образец/работа

Я не могу ни читать, ни писать файл в этой рабочей папке. Я использую C# для чтения и записи. Я установил разрешения NTFS для полного доступа, но проблема.

Пожалуйста, помогите Спасибо

+0

Возможно, вам потребуется дополнительная информация, но для начала: Проверьте разрешения пользователя Windows, с которым работает IIS; проверьте, установлен ли в web.config и т. д. – LesterDove

+0

Привет, какая ошибка вы получаете? – LesterDove

+0

Я не получаю никакой ошибки как таковой. Я запускаю тот же сайт в Visual Studio, он отлично работает, он даже создает файл в каталоге wwwroot/sample/work. Но как только я публикую свой сайт в IIS, файл не создается! Если бы была ошибка ACL, она не должна была работать с Visual Studio WebDev Server, я просто не могу понять! – Jayesh

ответ

2

Это, вероятно, связано с проблемой с ACL, при запуске его в Visual Studio WebDev Server, он работает с использованием вашей личности, а также при использовании Visual Studio в поднятом способом (Vista +), то вы фактически можете работать как администратор. Когда вы запускаете его в IIS, он запускается как идентификатор службы, обычно Network Service для IIS 6 и 7, или идентификатор AppPool для IIS 7 SP2 и IIS 7.5. Одна вещь, которую я бы рекомендовал, - добавить некоторую информацию трассировки в код, который пытается записать файл, например сделать try/catch, где исключение отправлено на трассировку, чтобы вы могли включить трассировку и определить, является ли исключение происходит или нет. Также убедитесь, что вы используете правильный физический путь, так как вы также можете иметь проблемы с относительными путями, поскольку IIS, вероятно, разрешит их для system32, если вы не используете Server.MapPath или что-то подобное.

+0

+1 для этого - один из способов ... –

Смежные вопросы