У меня возникла проблема с веб-сайтом PHP, работающим на IIS 7 в Windows Server 2008.
Есть одна строка кода, вызывающая mkdir, которая вызывает ошибку, и журнал ошибок читает:
«…отказано в разрешении…»
Я исключил все, что связано с правами доступа к папкам (. Я пробовал несколько групп :Все, Пользователи, IUSR, Сетевая служба и т. д., но безуспешно ).
Мне нужно знать, как работает mkdir, проверяет ли атрибут родительской папки только для чтения -?
Если так,тогда это может быть корнем проблемы, поскольку все папки в Windows Server 2008 помечены как «Только для чтения», а флажок неактивен --Microsoft говорит, что это «преднамеренно», но я думаю, что это действительно " плохой дизайн».
Пожалуйста помоги.
P.S. Строка кода, ошибки которой можно найти здесьhttps://github.com/LimeSurvey/LimeSurvey/blob/070d255ba381d7abcd231d7c9e0c7d11f5578c97/admin/templates.php#L1182это строка 1182.
РЕШЕНИЕ:
echo
для вывода значения $target
. ИЗВЛЕЧЕННЫЕ УРОКИ:
Награда присуждена @BOMEz из-за полезной цитаты из mkdir()
документации, в которой указано, что я должен удвоить -права доступа. @BOMEz также предоставил индивидуальный ответ и пообщался со мной через комментарии, которые помогли.