Re: BasicAuth только с определенных IP

2018-11-06 Пенетрантность Dmitriy Lyalyuev
satisfy any;

-- 
With best regards,
Dmitriy Lyalyuev
dmit...@lyalyuev.info



> On Nov 7, 2018, at 06:16, inkognito0609  wrote:
> 
> Необходимо чтобы из внутренней сети доступ был без авторизации, из внешней
> сети для разрешенных определенных адресов запрашивался пароль
> 
> Posted at Nginx Forum: 
> https://forum.nginx.org/read.php?21,281796,281846#msg-281846
> 
> ___
> nginx-ru mailing list
> nginx-ru@nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru



smime.p7s
Description: S/MIME cryptographic signature
___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: pipe to http

2018-11-06 Пенетрантность Dmitriy Lyalyuev
X-Accel-Redirect похоже то, что вам нужно.

-- 
With best regards,
Dmitriy Lyalyuev
dmit...@lyalyuev.info



> On Nov 7, 2018, at 02:59, Nick Knutov  wrote:
> 
> Доброго времени суток,
> 
> подскажите, как лучше реализовать такую задачу:
> 
> запрос приходит к nginx, отправляется некоторому скрипту (uwsgi->perl), 
> который проверяет авторизацию, и если всё ок, то необходимо запустить 
> какой-то процесс, который отдаст много гигабайт данных в stdout и это надо 
> отдать хттп-клиенту.
> 
> Причем, важно, если клиент отвалился - процесс нужно убить.
> 
> Сейчас я запускаю процесс скриптом и перекладываю его ответ дальше перловым 
> скриптом, но он ест неприемлемо много проца и имеет непонятные проблемы с 
> буферизацией и медленными клиентами. Нельзя ли в скрипте ограничиться чем-то 
> вроде внутреннего редиректа и остальную работу сделать на уровне nginx?
> 
> -- 
> Best Regards,
> Nick Knutov
> http://knutov.com
> ICQ: 272873706
> Voice: +7-904-84-23-130
> 
> ___
> nginx-ru mailing list
> nginx-ru@nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru



smime.p7s
Description: S/MIME cryptographic signature
___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: как правильно прописать путь до статики

2018-11-06 Пенетрантность inkognito0609
в /srv/www/frontend/build/ лежит html файл в котором прописан путь до
статики - /static/css/main.0a23196b.css

Но при обработке->
location /restore { 
alias /srv/www/frontend/build/; 
rewrite ^/restore$ /restore/; 

Статику ищет с добавлением restore
localhost/restore/static/css/main.0a23196b.css
как убрать restore, так как планируется добавление новых location по данному
шаблону?

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

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

Re: BasicAuth только с определенных IP

2018-11-06 Пенетрантность inkognito0609
Необходимо чтобы из внутренней сети доступ был без авторизации, из внешней
сети для разрешенных определенных адресов запрашивался пароль

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

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

pipe to http

2018-11-06 Пенетрантность Nick Knutov

Доброго времени суток,

подскажите, как лучше реализовать такую задачу:

запрос приходит к nginx, отправляется некоторому скрипту (uwsgi->perl), 
который проверяет авторизацию, и если всё ок, то необходимо запустить 
какой-то процесс, который отдаст много гигабайт данных в stdout и это 
надо отдать хттп-клиенту.


Причем, важно, если клиент отвалился - процесс нужно убить.

Сейчас я запускаю процесс скриптом и перекладываю его ответ дальше 
перловым скриптом, но он ест неприемлемо много проца и имеет непонятные 
проблемы с буферизацией и медленными клиентами. Нельзя ли в скрипте 
ограничиться чем-то вроде внутреннего редиректа и остальную работу 
сделать на уровне nginx?


--
Best Regards,
Nick Knutov
http://knutov.com
ICQ: 272873706
Voice: +7-904-84-23-130

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

Re: BasicAuth только с определенных IP

2018-11-06 Пенетрантность Maxim Dounin
Hello!

On Tue, Nov 06, 2018 at 05:24:58AM -0500, inkognito0609 wrote:

> Модуль ngx_http_access_module позволяет ограничить доступ для определённых
> адресов клиентов.
> ngx_http_auth_basic_module позволяет ограничить доступ к ресурсам с
> проверкой имени и пароля.
> 
> Можно ли реализовать проверку имени и пароля при условии входа с
> определенных ip адресов?, если да то как?

Есть директива satisfy, она позволяет произвольно комбинировать 
access (allow/deny) и auth_basic.  Подробнее про неё рассказано в 
документации тут:

http://nginx.org/ru/docs/http/ngx_http_core_module.html#satisfy

Поведение по умолчанию - "satisfy all", то есть проверяются 
результаты как allow/deny, так и auth_basic.  То есть для того, 
чтобы доступ был разрешён только с определённых IP-адресов, и при 
этом у пришедших с этих адресов спрашивалась авторизация, 
достаточно написать:

allow 192.168.0.0/24;
deny all;
auth_basic "restricted site";
auth_basic_user_file /path/to/htpasswd;

При этом nginx сначала проверит IP-адрес, и если доступ с этого 
IP-адреса запрещён - вернёт ошибку.

Если же вдруг я неверно понял вопрос и на самом деле зачем-то 
хочется, чтобы доступ был разрешён всем, но с определённых 
IP-адресов - только с авторизацией, то можно использовать "satisfy 
any", и разрешить доступ от всех адресов, кроме тех, у которых 
нужно спрашивать авторизацию:

satisfy any;
deny 192.168.0.0/24;
allow all;
auth_basic "restricted site";
auth_basic_user_file /path/to/htpasswd;

-- 
Maxim Dounin
http://mdounin.ru/
___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: Как приоритизировать шифры для TLSv1.3?

2018-11-06 Пенетрантность Maxim Dounin
Hello!

On Mon, Nov 05, 2018 at 07:38:46AM -0500, I0Result wrote:

> я смотрю openssl добавил другой параметр для сортировки шифров -ciphersuites
> (https://www.openssl.org/docs/man1.1.1/man1/ciphers.html)
> Если запускать команду, то шифры начинают приоритезироваться 
> openssl ciphers -ciphersuites
> TLS_CHACHA20_POLY1305_SHA256:TLS_AES_256_GCM_SHA384:TLS_AES_128_GCM_SHA256
> -s -v EECDH+CHACHA20:EECDH+AESGCM | column -t
> 
> TLS_CHACHA20_POLY1305_SHA256   TLSv1.3  Kx=any   Au=any   
> Enc=CHACHA20/POLY1305(256)  Mac=AEAD
> TLS_AES_256_GCM_SHA384 TLSv1.3  Kx=any   Au=anyEnc=AESGCM(256)  
>   Mac=AEAD
> TLS_AES_128_GCM_SHA256 TLSv1.3  Kx=any   Au=anyEnc=AESGCM(128)  
>   Mac=AEAD
> ECDHE-ECDSA-CHACHA20-POLY1305  TLSv1.2  Kx=ECDH  Au=ECDSA 
> Enc=CHACHA20/POLY1305(256)  Mac=AEAD
> ECDHE-RSA-CHACHA20-POLY1305TLSv1.2  Kx=ECDH  Au=RSA   
> Enc=CHACHA20/POLY1305(256)  Mac=AEAD
> ECDHE-ECDSA-AES256-GCM-SHA384  TLSv1.2  Kx=ECDH  Au=ECDSA  Enc=AESGCM(256)  
>   Mac=AEAD
> ECDHE-RSA-AES256-GCM-SHA384TLSv1.2  Kx=ECDH  Au=RSAEnc=AESGCM(256)  
>   Mac=AEAD
> ECDHE-ECDSA-AES128-GCM-SHA256  TLSv1.2  Kx=ECDH  Au=ECDSA  Enc=AESGCM(128)  
>   Mac=AEAD
> ECDHE-RSA-AES128-GCM-SHA256TLSv1.2  Kx=ECDH  Au=RSAEnc=AESGCM(128)  
>   Mac=AEAD
> 
> Как быть с настройками nignx?

Напрямую через конфигурацию nginx настроить шифры для TLSv1.3 
сейчас нельзя - подробнее почитать о том, почему так, можно тут:

https://trac.nginx.org/nginx/ticket/1529

In short: в OpenSSL выпилили управление шифрами для TLSv1.3 из 
стандартного интерфейса, и непонятно, запилят ли обратно.  Делать 
же отдельную директиву аналогично "-ciphersuites" крайне не 
хочется, ибо это выглядит как идиотизм чуть менее, чем полностью.

Если очень хочется - сейчас шифры для TLSv1.3 можно задать через 
конфиг OpenSSL'я, openssl.conf.  Как-то так:

openssl_conf = default_conf

[default_conf]
ssl_conf = ssl_sect

[ssl_sect]
system_default = system_default_sect

[system_default_sect]
Ciphersuites = TLS_CHACHA20_POLY1305_SHA256

-- 
Maxim Dounin
http://mdounin.ru/
___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

[nginx-ru-announce] nginx security advisory (CVE-2018-16845)

2018-11-06 Пенетрантность Maxim Dounin
Hello!

В модуле ngx_http_mp4_module была обнаружена ошибка, которая позволяет с
помощью специально созданного mp4-файла вызвать бесконечный цикл в
рабочем процессе, падение рабочего процесса, либо же могла приводить к
отправке клиенту содержимого памяти рабочего процесса (CVE-2018-16845).

Проблеме подвержен nginx, если он собран с модулем ngx_http_mp4_module
(по умолчанию не собирается) и директива mp4 используется в
конфигурационном файле.  При этом атака возможна только в случае, если
атакующий имеет возможность обеспечить обработку специально созданного
mp4-файла с помощью модуля ngx_http_mp4_module.

Проблеме подвержен nginx 1.1.3+, 1.0.7+.
Проблема исправлена в 1.15.6, 1.14.1.

Патч, исправляющий проблему, доступен тут:

http://nginx.org/download/patch.2018.mp4.txt


-- 
Maxim Dounin
http://nginx.org/
___
nginx-ru-announce mailing list
nginx-ru-announce@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru-announce

[nginx-ru-announce] nginx security advisory (CVE-2018-16843, CVE-2018-16844)

2018-11-06 Пенетрантность Maxim Dounin
Hello!

В реализации HTTP/2 в nginx были обнаружены две проблемы безопасности,
которые могут преводить к чрезмерному потреблению памяти (CVE-2018-16843)
и ресурсов процессора (CVE-2018-16844).

Проблемам подвержен nginx, собранный с модулем ngx_http_v2_module (по
умолчанию не собирается), если в конфигурационном файле используется
параметр http2 директивы listen.

Проблемам подвержен nginx 1.9.5 - 1.15.5.
Проблемы исправлены в nginx 1.15.6, 1.14.1.

Спасибо Gal Goldshtein из F5 Networks за исходное сообщение о проблеме с
потреблением ресурсов процессора.


-- 
Maxim Dounin
http://nginx.org/
___
nginx-ru-announce mailing list
nginx-ru-announce@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru-announce

[nginx-ru-announce] nginx-1.14.1

2018-11-06 Пенетрантность Maxim Dounin
Изменения в nginx 1.14.1  06.11.2018

*) Безопасность: при использовании HTTP/2 клиент мог вызвать чрезмерное
   потреблению памяти (CVE-2018-16843) и ресурсов процессора
   (CVE-2018-16844).

*) Безопасность: при обработке специально созданного mp4-файла модулем
   ngx_http_mp4_module содержимое памяти рабочего процесса могло быть
   отправлено клиенту (CVE-2018-16845).

*) Исправление: при работе с gRPC-бэкендами могло расходоваться большое
   количество памяти.


-- 
Maxim Dounin
http://nginx.org/
___
nginx-ru-announce mailing list
nginx-ru-announce@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru-announce

nginx security advisory (CVE-2018-16845)

2018-11-06 Пенетрантность Maxim Dounin
Hello!

В модуле ngx_http_mp4_module была обнаружена ошибка, которая позволяет с
помощью специально созданного mp4-файла вызвать бесконечный цикл в
рабочем процессе, падение рабочего процесса, либо же могла приводить к
отправке клиенту содержимого памяти рабочего процесса (CVE-2018-16845).

Проблеме подвержен nginx, если он собран с модулем ngx_http_mp4_module
(по умолчанию не собирается) и директива mp4 используется в
конфигурационном файле.  При этом атака возможна только в случае, если
атакующий имеет возможность обеспечить обработку специально созданного
mp4-файла с помощью модуля ngx_http_mp4_module.

Проблеме подвержен nginx 1.1.3+, 1.0.7+.
Проблема исправлена в 1.15.6, 1.14.1.

Патч, исправляющий проблему, доступен тут:

http://nginx.org/download/patch.2018.mp4.txt


-- 
Maxim Dounin
http://nginx.org/
___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

[nginx-ru-announce] nginx-1.15.6

2018-11-06 Пенетрантность Maxim Dounin
Изменения в nginx 1.15.6  06.11.2018

*) Безопасность: при использовании HTTP/2 клиент мог вызвать чрезмерное
   потреблению памяти (CVE-2018-16843) и ресурсов процессора
   (CVE-2018-16844).

*) Безопасность: при обработке специально созданного mp4-файла модулем
   ngx_http_mp4_module содержимое памяти рабочего процесса могло быть
   отправлено клиенту (CVE-2018-16845).

*) Добавление: директивы proxy_socket_keepalive,
   fastcgi_socket_keepalive, grpc_socket_keepalive,
   memcached_socket_keepalive, scgi_socket_keepalive и
   uwsgi_socket_keepalive.

*) Исправление: если nginx был собран с OpenSSL 1.1.0, а использовался с
   OpenSSL 1.1.1, протокол TLS 1.3 всегда был разрешён.

*) Исправление: при работе с gRPC-бэкендами могло расходоваться большое
   количество памяти.


-- 
Maxim Dounin
http://nginx.org/
___
nginx-ru-announce mailing list
nginx-ru-announce@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru-announce

nginx-1.14.1

2018-11-06 Пенетрантность Maxim Dounin
Изменения в nginx 1.14.1  06.11.2018

*) Безопасность: при использовании HTTP/2 клиент мог вызвать чрезмерное
   потреблению памяти (CVE-2018-16843) и ресурсов процессора
   (CVE-2018-16844).

*) Безопасность: при обработке специально созданного mp4-файла модулем
   ngx_http_mp4_module содержимое памяти рабочего процесса могло быть
   отправлено клиенту (CVE-2018-16845).

*) Исправление: при работе с gRPC-бэкендами могло расходоваться большое
   количество памяти.


-- 
Maxim Dounin
http://nginx.org/
___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

nginx security advisory (CVE-2018-16843, CVE-2018-16844)

2018-11-06 Пенетрантность Maxim Dounin
Hello!

В реализации HTTP/2 в nginx были обнаружены две проблемы безопасности,
которые могут преводить к чрезмерному потреблению памяти (CVE-2018-16843)
и ресурсов процессора (CVE-2018-16844).

Проблемам подвержен nginx, собранный с модулем ngx_http_v2_module (по
умолчанию не собирается), если в конфигурационном файле используется
параметр http2 директивы listen.

Проблемам подвержен nginx 1.9.5 - 1.15.5.
Проблемы исправлены в nginx 1.15.6, 1.14.1.

Спасибо Gal Goldshtein из F5 Networks за исходное сообщение о проблеме с
потреблением ресурсов процессора.


-- 
Maxim Dounin
http://nginx.org/
___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

nginx-1.15.6

2018-11-06 Пенетрантность Maxim Dounin
Изменения в nginx 1.15.6  06.11.2018

*) Безопасность: при использовании HTTP/2 клиент мог вызвать чрезмерное
   потреблению памяти (CVE-2018-16843) и ресурсов процессора
   (CVE-2018-16844).

*) Безопасность: при обработке специально созданного mp4-файла модулем
   ngx_http_mp4_module содержимое памяти рабочего процесса могло быть
   отправлено клиенту (CVE-2018-16845).

*) Добавление: директивы proxy_socket_keepalive,
   fastcgi_socket_keepalive, grpc_socket_keepalive,
   memcached_socket_keepalive, scgi_socket_keepalive и
   uwsgi_socket_keepalive.

*) Исправление: если nginx был собран с OpenSSL 1.1.0, а использовался с
   OpenSSL 1.1.1, протокол TLS 1.3 всегда был разрешён.

*) Исправление: при работе с gRPC-бэкендами могло расходоваться большое
   количество памяти.


-- 
Maxim Dounin
http://nginx.org/
___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: Настройка протокола FastCGI для high load

2018-11-06 Пенетрантность Валентин Бартенев
On Tuesday 06 November 2018 06:25:36 kseleznyov wrote:
> Добрый день!
> 
> Проблема такая. Мы используем библиотеку libfcgi. Она популярная, хорошо про
> тестированная и т.д. и т.п., но... она не поддерживает переиспользование
> соединений. Может быть посоветуете другую библиотеку для c++?
> 
> Если же использовать libfcgi, то поясню свой предыдущий вопрос. Допустим
> nginx уже открыл N соединений FastCGI и по каждому из них уже обрабатывается
> FastCGI-запрос. Допустим приходит ещё один HTTP-запрос и у nginx есть три
> пути: либо открывать ещё одно FastCGI-соединение для обработки нового
> HTTP-запроса, либо откладывать этот HTTP-запрос (пока не отработает один из
> N запросов), либо вообще возвращать ошибку. Как поступает nginx? Какие
> настройки на это влияют?
> 

1. nginx по умолчанию _всегда_ открывает новое соединение.  И это
   должно работать с libfcgi без проблем.

2. Если вы настроили keepalive (http://nginx.org/r/keepalive/ru),
   то при наличии свободного соединения (в котором не обрабатывается
   запрос) - будет использоваться это соединение, в противном случае
   открываться новое.

3. Если вы установили параметр max_conns у директивы server, то при
   превышении данного значения nginx будет пытаться выбрать другой
   сервер, а при неудаче - возвращать ошибку.

4. Откладывать nginx умеет только в коммерческой версии с помощью
   директивы queue (http://nginx.org/r/queue/ru).

--
Валентин Бартенев
___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: Настройка протокола FastCGI для high load

2018-11-06 Пенетрантность Илья Шипицин
вт, 6 нояб. 2018 г. в 16:25, kseleznyov :

> Добрый день!
>
> Проблема такая. Мы используем библиотеку libfcgi. Она популярная, хорошо
> про
> тестированная и т.д. и т.п., но... она не поддерживает переиспользование
> соединений. Может быть посоветуете другую библиотеку для c++?
>
> Если же использовать libfcgi, то поясню свой предыдущий вопрос. Допустим
> nginx уже открыл N соединений FastCGI и по каждому из них уже
> обрабатывается
> FastCGI-запрос. Допустим приходит ещё один HTTP-запрос и у nginx есть три
> пути: либо открывать ещё одно FastCGI-соединение для обработки нового
> HTTP-запроса, либо откладывать этот HTTP-запрос (пока не отработает один из
> N запросов), либо вообще возвращать ошибку. Как поступает nginx? Какие
> настройки на это влияют?
>

как уже ответил Валентин -  nginx будет пытаться оставить соединение в
пуле, если
а) вы сделали настройки (которые он показал)
б) если бекенд его не закроет


>
> Posted at Nginx Forum:
> https://forum.nginx.org/read.php?21,281762,281797#msg-281797
>
> ___
> 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

Re: Настройка протокола FastCGI для high load

2018-11-06 Пенетрантность kseleznyov
Добрый день!

Проблема такая. Мы используем библиотеку libfcgi. Она популярная, хорошо про
тестированная и т.д. и т.п., но... она не поддерживает переиспользование
соединений. Может быть посоветуете другую библиотеку для c++?

Если же использовать libfcgi, то поясню свой предыдущий вопрос. Допустим
nginx уже открыл N соединений FastCGI и по каждому из них уже обрабатывается
FastCGI-запрос. Допустим приходит ещё один HTTP-запрос и у nginx есть три
пути: либо открывать ещё одно FastCGI-соединение для обработки нового
HTTP-запроса, либо откладывать этот HTTP-запрос (пока не отработает один из
N запросов), либо вообще возвращать ошибку. Как поступает nginx? Какие
настройки на это влияют?

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

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

Re: как правильно прописать путь до статики

2018-11-06 Пенетрантность Илья Шипицин
вт, 6 нояб. 2018 г. в 15:09, inkognito0609 :

> server {
> ...
> root   /srv/www/app/web;
>
> index index.php index.html;
>
> port_in_redirect off;
> if (!-e $request_filename) {
> rewrite ^/(.*)/$ https://$host/$1 permanent;
> }
>

безотносительно вашего исходного вопроса (я не в курсе, что у вас
сломалось) 
есть няшная штука для проверки, есть файл или нет файла - try_files
там под капотом ровно то же, что у вас, но синтаксис получается читаемый



>
> location /restore {
> alias /srv/www/frontend/build/;
> rewrite ^/restore$ /restore/;
> ...
> При открытии страницы localhost/restore не может найти статику
> static/css/main.css
> Status Code: 404 Not Found
>
> /srv/www/frontend/build/static/css/
> /srv/www/frontend/build/static/js/
> /srv/www/frontend/build/static/media/
>
> Posted at Nginx Forum:
> https://forum.nginx.org/read.php?21,281795,281795#msg-281795
>
> ___
> 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

BasicAuth только с определенных IP

2018-11-06 Пенетрантность inkognito0609
Модуль ngx_http_access_module позволяет ограничить доступ для определённых
адресов клиентов.
ngx_http_auth_basic_module позволяет ограничить доступ к ресурсам с
проверкой имени и пароля.

Можно ли реализовать проверку имени и пароля при условии входа с
определенных ip адресов?, если да то как?

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

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

как правильно прописать путь до статики

2018-11-06 Пенетрантность inkognito0609
server {
...
root   /srv/www/app/web;

index index.php index.html;

port_in_redirect off;
if (!-e $request_filename) {
rewrite ^/(.*)/$ https://$host/$1 permanent;
}

location /restore {
alias /srv/www/frontend/build/;
rewrite ^/restore$ /restore/;
...
При открытии страницы localhost/restore не может найти статику
static/css/main.css
Status Code: 404 Not Found

/srv/www/frontend/build/static/css/
/srv/www/frontend/build/static/js/
/srv/www/frontend/build/static/media/

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

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