Константин Ткаченко
April 16, 2020 04:56PM
Здравствуйте!
То, что вы хотите сделать, проще делается через location. Примерно так:

server_name localhost;

location ~ ^/(?<project>)/$ {
root /var/www/$project/public;
try_files ...
}

П.С. Пример не проверял

> 16 апр. 2020 г., в 13:08, BugBuster <nginx-forum@forum.nginx.org> написал(а):
>
> Я хочу подставлять переменную в `root` из URL, примерно так:
>
> server {
> listen 80;
> index index.php index.html;
> server_name ~^localhost/(?<project>)/.+$;
> root /var/www/$project/public;
> ...
> }
>
> Идея заключается в том, чтобы настроить роутинг в соответствии с
> директориями в корне:
>
> 1) "/var/www/project-one/public/index.php"
> 2) "/var/www/project-two/public/index.php"
>
> Таким образом при таких запросах должны отдаваться файлы в соответствующих
> директориях проектов:
>
> "http://localhost/project-one/" ->> "/var/www/project-one/public/"
>
> "http://localhost/project-two/" ->> "/var/www/project-two/public/"
>
> Можно ли это сделать без использования alias?
>
> Posted at Nginx Forum: https://forum.nginx.org/read.php?21,287679,287679#msg-287679
>
> _______________________________________________
> nginx-ru mailing list
> nginx-ru@nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru

_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru
Subject Author Posted

Как настроить роуминг с помощью root?

BugBuster April 16, 2020 05:08AM

Re: Как настроить роуминг с помощью root?

Константин Ткаченко April 16, 2020 04:56PM

Re: Как настроить роуминг с помощью root?

BugBuster April 17, 2020 06:08AM

Re: Как настроить роуминг с помощью root?

Константин Ткаченко April 17, 2020 06:06PM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 234
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready