Включить доступ PHP к папке в Windows
Я пытаюсь предоставить доступ загрузчику php для записи загруженных файлов в папки за пределами области действия apache.
- Папка
c
в данном случае представляет корневой каталог Windows Server 2012
Папка apache:
/cygdrive/c/apache24 (c:\apache24)
Папка php:
/cygdrive/c/php
Папка загрузчика:
/cygdrive/c/apache24/htdocs/uploader
Директива загрузчика:
define('RELATIVE_UPLOAD_DIR', '/cygdrive/c/Users/myusername');
define('UPLOAD_DIR', rtrim(dirname($_SERVER['SCRIPT_FILENAME']), '/') . '/' . RELATIVE_UPLOAD_DIR);
Загрузчик будет загружать файлы в папку загрузчика, но я пытаюсь загрузить файлы в Windows Users
папка.
/cygdrive/c/Users/myusername
Как я могу включить папку Users
и поддерево в php.ini, чтобы загрузчик мог записывать в них файлы?
1 answers
В среде *Nix вам придется сделать целевой каталог доступным для записи владельцем процесса apache. Если вы не знаете, что это такое, загляните в файл httpd.conf. Найдите две строки, например:
Пользователь _www Группа _www
Этот пользователь должен иметь доступ на запись в любой целевой каталог. Я думаю, что в Windows то же самое.
Я должен признаться, что мне не нравится идея писать в каталоги пользователей. Может быть, лучше переосмыслить то, что вы пытаетесь сделать и найдите способ обеспечить безопасность и безопасность пользователей, предоставляя им доступ к данным.