Ответ 1
У меня такая же настройка, и я должен дать разрешение на запись:
'IUSR' и 'IIS AppPool\AppPoolName'
Мне нужен PHP script, чтобы иметь разрешение на запись в каталоге. PHP 5.3 работает как FastCGI в IIS 7 с сервером Windows 2008 как OP. В моих журналах ошибок php я получил "разрешение отклонено", когда script пытается записать файл.
Как я могу разобраться в этом? Я попытался предоставить все права на IIS_IUSR и IUSR_myservername (щелкнув правой кнопкой мыши по моей папке), но это не сработало.
Любая помощь будет очень оценена,
Привет,
Жюльен
У меня такая же настройка, и я должен дать разрешение на запись:
'IUSR' и 'IIS AppPool\AppPoolName'
Собственно, это немного сложнее.
Первое, что нужно сделать, это создать простой файл PHP на соответствующем веб-сайте. (Важно создать файл на соответствующем веб-сайте, потому что на каждом веб-сайте может быть другой параметр.) Содержимое этого файла должно быть:
<?php var_dump(ini_get('fastcgi.impersonate')); ?>
Перейдите к этому файлу с помощью браузера.
** Случай 1 **
Если ваш браузер показывает:
string(1) "1"
Затем вам нужно выполнить следующую команду (вам нужно заменить "Веб-сайт по умолчанию" на имя, которое вы указали на свой веб-сайт в IIS):
%windir%\system32\inetsrv\appcmd.exe list config "Default Web Site" ^
/section:anonymousAuthentication
Вы получите ответ, который выглядит следующим образом:
<system.webServer>
<security>
<authentication>
<anonymousAuthentication enabled="true" userName="IUSR" />
</authentication>
</security>
</system.webServer>
Информация, которую вы ищете, - это значение атрибута username
тега anonymousAutthentification
.
IIS AppPool\AppPoolName
(замените "AppPoolName" на имя пула приложений вашего веб-сайта).** Случай 2 **
Если ваш браузер показывает:
string(1) "0"
Вам нужно предоставить разрешения на запись для IIS AppPool\AppPoolName
(замените "AppPoolName" на имя пула приложений вашего веб-сайта).
Вам нужно дать разрешение на PHP, а не IIS. Это означает, что учетная запись пользователя, на которой работает PHP, нуждается в разрешении (возможно, тот же самый IIS работает).