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

al3x nginx-forum на forum.nginx.org
Пт Июн 29 17:21:29 UTC 2018


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,280341#msg-280341



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