Re: Re[4]: Запуск php скриптов из разных директории

yanda.a nginx-forum на forum.nginx.org
Пн Июл 2 06:31:06 UTC 2018


Конечно не получится. Еще раз повторюсь, nginx не имеет никакого отношения к
PHP и ни коим образом не разграничивает права доступа к файлам.

al3x Wrote:
-------------------------------------------------------
> index.php:
> <?php
> echo file_get_contents('template/news.html');
> ?>
> 
> То есть что-то типа такого не получится для моей задачи:?
> 
> root /home/user;
> 
> location / {
> 	try_files $uri $uri/ @fallback;
> }
> 
> location @fallback {
> 	root /home/admin;
> 	try_files $uri $uri/ /index.php?$query_string;
> }
> 
> yanda.a Wrote:
> -------------------------------------------------------
> > Так это же задача PHP, а не Nginx. Nginx должен проксировать
> запросы
> > на бекенд, балансировать нагрузку на бекенды, возможно менять uri
> > запроса и отдавать статику. Но иметь какое-либо отношение к PHP он
> не
> > должен!
> > 
> > Хотя, что имеется в виду под "Далее /home/admin/index.php выполняет
> > свою работу и хочет обработать файл template/news.html."?
> > 
> > al3x Wrote:
> > -------------------------------------------------------
> > > Я уже начинаю думать, что у меня какая-то бредовая идея... еще
> > немного
> > > и я откажусь от нее =)
> > > Не знаю как еще объяснить, но попробую...
> > > 
> > > Есть файлы CMS:
> > > /home/admin/index.php
> > > /home/admin/modules/module.php
> > > /home/admin/template/news.html
> > > /home/admin/template/style.css
> > > 
> > > Директория юзера:
> > > /home/user/ - у юзера есть доступ только к этой директории.
> > > 
> > > При обращении по IP сервера nginx сначала смотрит в /home/user/ и
> > если
> > > не находит там index.php, то смотрит в /home/admin/index.php и
> > отдает
> > > его.
> > > 
> > > Далее /home/admin/index.php выполняет свою работу и хочет
> > обработать
> > > файл template/news.html. Nginx должен проверить, нет ли этого
> файла
> > в
> > > директории юзера /home/user/template/news.html и если есть, то
> > отдать
> > > его. Если этого файла нет, то отдать из папки
> > > /home/admin/template/news.html
> > > 
> > > Затем юзер захотел создать свой личный модуль и положил его в
> папку
> > > /home/user/modules/new_module.php
> > > и когда /home/admin/index.php загружает модули из папки /modules/
> > то
> > > nginx должен сначала проверить все файлы в директории юзера
> > > /home/user/modules/, а затем здесь /home/admin/modules/ и таким
> > > образом подгрузить для PHP все модули из двух директорий, словно
> из
> > > одной.
> > > 
> > > Т.е. директории должны быть как бы зеркалами друг друга.
> > > 
> > > Это возможно сделать?
> > > 
> > > Dmitriy Lyalyuev Wrote:
> > > -------------------------------------------------------
> > > > Может я чего не понимаю, но может стоит сделать локейшн типа
> > > > /user_content
> > > > и рут выставить ​в хомяк юзера?
> > > > Туда же и ФТП пусть смотрит с ограничением юзера в этом
> каталоге.
> > > > А все остальное юзеру не будет доступно от слова совсем.
> > > > 
> > > > Задача простая как 3 копейки и слабо имеет отношение к  Nginx.
> > > > Или я чего-то не понимаю?
> > > > _______________________________________________
> > > > nginx-ru mailing list
> > > > nginx-ru на nginx.org
> > > > http://mailman.nginx.org/mailman/listinfo/nginx-ru

Posted at Nginx Forum: https://forum.nginx.org/read.php?21,280329,280362#msg-280362



Подробная информация о списке рассылки nginx-ru