Hello!

On Wed, Feb 24, 2016 at 01:45:27AM +0200, Alex Domoradov wrote:

> https://trac.nginx.org/nginx/ticket/97
> 
> подскажите, до сих пор нет решения этой проблемы?

Проблемы из этого тикета, не являющиеся дискуссионными, в 
современных версиях nginx'а решены.  По опыту - если вы пришли к 
выводу, что ваши проблемы из-за этого тикета, то скорее всего вы 
просто перемудрили в конфиге.

> Есть
> 
> server {
>    root /vhosts/api.example.net/public_html;
> 
>    location ~ /api/2.0 {
>       alias /vhosts/api.example.net/api/v2.0/public_html;
>       try_files $uri $uri/ /index.php?$query_string;
>    }
> }
> 
> при таком конфиге и обращении к /api/1.0 файлы ищутся в /vhosts/
> api.example.net/public_html, вместо /vhosts/
> api.example.net/api/v2.0/public_html

При обращении к /api/1.0 они и должны искаться от root'а сервера, 
т.к. location'а для /api/1.0 у вас не описано.

При обращении к /api/2.0, вероятно, происходнить будет не то, что 
вы хотели, т.к. в location'е, заданном с помощью регулярного 
выражения, alias определяет полный путь к файлу, а try_files к 
этому пути добавляет фрагменты.  Вам, вероятно, надо убрать "~" из 
location'а, сделав его обычным префиксным, и всё заработает так, 
как хотелось.

-- 
Maxim Dounin
http://nginx.org/

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

Ответить