Re: server_name в X-Original-URL

2017-01-04 Пенетрантность Dzmitry Stremkouski
Да, думаю, это как раз тот случай

$server_name - name of the server which accepted a request
$host - in this order of precedence: host name from the request line, or
host name from the “Host” request header field, or the server name matching
a request

$server_name вполне логично может быть первым именем в списке, остальное
считается за алиасы.
$host подходит.

Спасибо!

2017-01-04 23:09 GMT+03:00 Lystopad Aleksandr <l...@laa.zp.ua>:

>  Hello, Dzmitry Stremkouski!
>
> On Wed, Jan 04, 2017 at 10:37:01PM +0300
> mitr...@gmail.com wrote about "server_name в X-Original-URL":
> > Здравствуйте, активно использую auth_request на сервере.
> >
> > Использую
> > server {
> >   listen 443 ssl http2;
> >   listen [::]:443 ssl http2;
> >   server_name secure.stremki.net ssl.stremki.net;
> > ...
> >   location = /auth {
> > proxy_set_header X-Original-URL $scheme://$server_name$request_uri;
> > ...
> >
> > и у меня на бекенд авторизации вне зависимости от того, пришёл ли я на
> > secure или ssl, приходит server_name = secure.stremki.net
> >
> > Если имена server_name варьировать, то выбирается первое.
>
> А вам не подойдет $host вместо $server_name ? Лишнее туда не попадет
> по-идее
> в вашем случае.
>
> ___
> nginx-ru mailing list
> nginx-ru@nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>



-- 

(o_ - Dzmitry Stremkouski.
//\ - cel: +7 (916) 090-85-68
V_/_- web: http://mitroko.com

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

Re: server_name в X-Original-URL

2017-01-04 Пенетрантность Lystopad Aleksandr
 Hello, Dzmitry Stremkouski!

On Wed, Jan 04, 2017 at 10:37:01PM +0300
mitr...@gmail.com wrote about "server_name в X-Original-URL":
> Здравствуйте, активно использую auth_request на сервере.
> 
> Использую
> server {
>   listen 443 ssl http2;
>   listen [::]:443 ssl http2;
>   server_name secure.stremki.net ssl.stremki.net;
> ...
>   location = /auth {
> proxy_set_header X-Original-URL $scheme://$server_name$request_uri;
> ...
> 
> и у меня на бекенд авторизации вне зависимости от того, пришёл ли я на
> secure или ssl, приходит server_name = secure.stremki.net
> 
> Если имена server_name варьировать, то выбирается первое.

А вам не подойдет $host вместо $server_name ? Лишнее туда не попадет по-идее
в вашем случае.

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

Re: server_name в X-Original-URL

2017-01-04 Пенетрантность Vadim A. Misbakh-Soloviov
В письме от среда, 4 января 2017 г. 22:37:01 +07 пользователь Dzmitry 
Stremkouski написал:
> приходит server_name = secure.stremki.net
Насколько я знаю, приходит не "server_name", а заголовок. либо HTTP_HOST, либо 
HTTP_SERVER_NAME, либо ещё какой.
И в зависимости от того, какой из них вы проверяете, это может быть и just as 
planned. Я сейчас по памяти не помню, но какой-то заголовок и в самом деле 
передаёт первый хост из server_name, а какой-то — реальный хост, на который 
постучался клиент.
___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

server_name в X-Original-URL

2017-01-04 Пенетрантность Dzmitry Stremkouski
Здравствуйте, активно использую auth_request на сервере.

Использую
server {
  listen 443 ssl http2;
  listen [::]:443 ssl http2;
  server_name secure.stremki.net ssl.stremki.net;
...
  location = /auth {
proxy_set_header X-Original-URL $scheme://$server_name$request_uri;
...

и у меня на бекенд авторизации вне зависимости от того, пришёл ли я на
secure или ssl, приходит server_name = secure.stremki.net

Если имена server_name варьировать, то выбирается первое.

Если разбить секцию server на две, в каждой свой server_name с одним и тем
же сертификатом, то на локейшн /auth прилетает правильный server_name


Сборку использую свою, основанную на вашей с небольшим вкраплением модулей.
[mitroko@y core_nginx]$ nginx -V
nginx version: nginx/1.10.1
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-11) (GCC)
built with OpenSSL 1.0.1e-fips 11 Feb 2013
TLS SNI support enabled
configure arguments: --prefix=/etc/nginx --sbin-path=/usr/sbin/nginx
--modules-path=/usr/lib64/nginx/modules --conf-path=/etc/nginx/nginx.conf
--error-log-path=/var/log/nginx/error.log
--http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx.pid
--lock-path=/var/run/nginx.lock
--http-client-body-temp-path=/var/cache/nginx/client_temp
--http-proxy-temp-path=/var/cache/nginx/proxy_temp
--http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp
--http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp
--http-scgi-temp-path=/var/cache/nginx/scgi_temp --user=nginx --group=nginx
--with-http_ssl_module --with-http_realip_module
--with-http_addition_module --with-http_sub_module --with-http_dav_module
--with-http_flv_module --with-http_mp4_module --with-http_gunzip_module
--with-http_gzip_static_module --with-http_random_index_module
--with-http_secure_link_module --with-http_stub_status_module
--with-http_auth_request_module --with-http_xslt_module=dynamic
--with-http_image_filter_module=dynamic --with-http_geoip_module=dynamic
--with-http_perl_module=dynamic --add-dynamic-module=njs-1c50334fbea6/nginx
--with-threads --with-stream --with-stream_ssl_module
--with-http_slice_module --with-mail --with-mail_ssl_module --with-file-aio
--with-ipv6 --add-dynamic-module=ngx_devel_kit-v0.3.0
--add-module=nginx-upstream-fair
--add-dynamic-module=lua-nginx-module-v0.10.7
--add-module=headers-more-nginx-module-v0.261 --with-http_v2_module
--with-cc-opt='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions
-fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches
-m64 -mtune=generic'

пакеты для тестирования можно взять тут:
https://secure.stremki.net/mirror/repos/centos/RPMS/7/x86_64/
https://secure.stremki.net/mirror/repos/centos/SRPMS/

Centos 7 / ядро 3.10.0-514.2.2.el7.x86_64

Возможно, баг, возможно, кривизна моей пересборки вашего пакета отсюда -
https://nginx.org/packages/rhel/7/SRPMS/.

-- 

(o_ - Dzmitry Stremkouski.
//\ - cel: +7 (916) 090-85-68
V_/_- web: http://mitroko.com

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