Я пытаюсь настроить PHP-сервер с помощью IIS, но у меня возникла небольшая проблема.
У нас будет несколько пользователей с разными домашними каталогами, и пользователь User1 из коробки может получить доступ к файлам User2, например, используя операторы include, выполнив:
include('..\User2\file.php');
Есть ли способ, которым я могу безопасно указать PHP, чтобы он разрешал доступ к файлам только ниже определенного пути к файлу (т.е. User1 может получить доступ только к своим собственным файлам в. \ User1)?
Если нет, есть ли лучший способ сделать это?
Спасибо!
На данный момент это один из экземпляров IIS, это не значит, что он должен оставаться таким. Разделение выполняется через FTP, различные учетные записи пользователей, которые указывают им на их собственный каталог загрузки с соответствующими разрешениями, применяемыми с использованием NTFS.
Думаю, я нашел решение ...
Файловая структура выглядит следующим образом:
D: \ wwwroot \ User1 \ D: \ wwwroot \ User2 \
В php.ini добавьте следующее:
[PATH=D:/wwwroot/User1/]
open_basedir=D:/wwwroot/User1/
[PATH:=D:/wwwroot/User2]
open_basedir=D:/wwwroot/User2/
После этого PHP отклонит открытые файлы в ../User2/ для User1 и файлы в ../User1/ для User2.
Вы можете объяснить, как вы разделяете этих пользователей? Будут ли они запускать разные экземпляры IIS, по одному на пользователя?