Re: nginx. редирект урла без слеша в конце?

2020-07-15 Пенетрантность akoval
всем спасибо!

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

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

Re: nginx. редирект урла без слеша в конце?

2020-07-15 Пенетрантность fox
location / {
  return 301 https://$host$request_uri;
}

location /ua/about/loyalty-program {
  return 301 https://apteka-ds.com.ua/discount;
}

# ...


15.07.2020 21:23, akoval пишет:
> видимо эта строка return 301 https://$host$request_uri; все портит.
> как тогда правильно ее в конце прописать? если не зашло ни на один location,
> тогда идем на https?
> 
> Posted at Nginx Forum: 
> https://forum.nginx.org/read.php?21,288714,288721#msg-288721
> 
> ___
> 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: nginx. редирект урла без слеша в конце?

2020-07-15 Пенетрантность Gena Makhomed

On 15.07.2020 17:23, akoval wrote:


видимо эта строка return 301 https://$host$request_uri; все портит.
как тогда правильно ее в конце прописать? если не зашло ни на один location,
тогда идем на https?


вот эту строку:

return 301 https://$host$request_uri;

надо писать не в контексте server, а в контексте location /, тогда все 
будет работать:


location / {
return 301 https://$host$request_uri;
}

все остальные 301 редиректы - в своих собственных location`ах.

полезная статья:

http://nginx.org/ru/docs/http/request_processing.html
Как nginx обрабатывает запросы

полезная документация:

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

--
Best regards,
 Gena

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

Re: nginx. редирект урла без слеша в конце?

2020-07-15 Пенетрантность Sergey Kandaurov

> On 15 Jul 2020, at 17:23, akoval  wrote:
> 
> видимо эта строка return 301 https://$host$request_uri; все портит.

rewrite на уровне сервера срабатывает до сопоставления uri / location.

> как тогда правильно ее в конце прописать? если не зашло ни на один location,
> тогда идем на https?

Например, положить в наименее специфичный location:

location / {
return 301 https://$host$request_uri;
}

-- 
Sergey Kandaurov

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

Re: nginx. редирект урла без слеша в конце?

2020-07-15 Пенетрантность akoval
видимо эта строка return 301 https://$host$request_uri; все портит.
как тогда правильно ее в конце прописать? если не зашло ни на один location,
тогда идем на https?

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

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

Re: nginx. редирект урла без слеша в конце?

2020-07-15 Пенетрантность akoval
location /ua/about/loyalty-program { return 301
https://apteka-ds.com.ua/discount; }
  location /ua/about { return 301 https://apteka-ds.com.ua/about-us; }
  location /ua/about/contacts { return 301
https://apteka-ds.com.ua/contacts; }
  location /ua/files/docs/loyalty/Договір_Клієнта.pdf { return 301
https://apteka-ds.com.ua/loyalty/Договір_Клієнта.pdf; }
  
  # articles
  location /ua/articles/koronavirus-vse-shcho-potribno-znaty-pro-nogo/ {
return 301
https://apteka-ds.com.ua/blog-item/koronavirus-vse-shcho-potribno-znaty-pro-noho/;
}
...

return 301 https://$host$request_uri;

с location вообще все перестало работать (

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

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

Re: nginx. редирект урла без слеша в конце?

2020-07-15 Пенетрантность Igor Sysoev
Уберите реврайты из конфига, возможно срабатывает какой-то реврайт.

location /ua/articles/koronavirus-vse-shcho-potribno-znaty-pro-nogo/
return 301 
https://apteka-ds.com.ua/blog-item/koronavirus-vse-shcho-potribno-znaty-pro-noho/;
}

-- 
Igor Sysoev

> On 15 Jul 2020, at 16:31, akoval  wrote:
> 
> location /ua/about/loyalty-program { return 301
> https://apteka-ds.com.ua/discount; }
> location /ua/about { return 301 https://apteka-ds.com.ua/about-us permanent;
> }
> location /ua/about/contacts { return 301 https://apteka-ds.com.ua/contacts
> permanent; }
> location /ua/files/docs/loyalty/Договір_Клієнта.pdf { return 301
> https://apteka-ds.com.ua/loyalty/Договір_Клієнта.pdf permanent; }
> 
>  # articles
>  rewrite /ua/articles/koronavirus-vse-shcho-potribno-znaty-pro-nogo/
> https://apteka-ds.com.ua/blog-item/koronavirus-vse-shcho-potribno-znaty-pro-noho/
> permanent;
> 
> 
> в данном контексте при заходе на
> http://apteka-ds.com.ua/ua/about/loyalty-program
> перекидає на https://apteka-ds.com.ua/about-us
> ?

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

Re: nginx. редирект урла без слеша в конце?

2020-07-15 Пенетрантность akoval
location /ua/about/loyalty-program { return 301
https://apteka-ds.com.ua/discount; }
location /ua/about { return 301 https://apteka-ds.com.ua/about-us permanent;
}
location /ua/about/contacts { return 301 https://apteka-ds.com.ua/contacts
permanent; }
location /ua/files/docs/loyalty/Договір_Клієнта.pdf { return 301
https://apteka-ds.com.ua/loyalty/Договір_Клієнта.pdf permanent; }
  
  # articles
  rewrite /ua/articles/koronavirus-vse-shcho-potribno-znaty-pro-nogo/
https://apteka-ds.com.ua/blog-item/koronavirus-vse-shcho-potribno-znaty-pro-noho/
permanent;


в данном контексте при заходе на
http://apteka-ds.com.ua/ua/about/loyalty-program
перекидає на https://apteka-ds.com.ua/about-us
?

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

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

Re: nginx. редирект урла без слеша в конце?

2020-07-15 Пенетрантность Igor Sysoev
> On 15 Jul 2020, at 15:13, akoval  wrote:
> 
> Напр:
> rewrite http://site1.com/aaa/ https://site1.com/bbb permanent; - работает
> rewrite http://site1.com/aaa https://site1.com/bbb permanent; - а так уже не
> хочет
> 
> Пробую разные регулярки, но пока не работает:
> rewrite ^/ua/about/loyalty-program/?$ https://apteka-ds.com.ua/discount
> permanent;

location /ua/about/loyalty-program {
return 301 https://apteka-ds.com.ua/discount;
}


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

nginx. редирект урла без слеша в конце?

2020-07-15 Пенетрантность akoval
Напр:
rewrite http://site1.com/aaa/ https://site1.com/bbb permanent; - работает
rewrite http://site1.com/aaa https://site1.com/bbb permanent; - а так уже не
хочет

Пробую разные регулярки, но пока не работает:
rewrite ^/ua/about/loyalty-program/?$ https://apteka-ds.com.ua/discount
permanent;

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

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

Re: Путаница в последовательность записей в логах

2020-07-15 Пенетрантность Sergey Kandaurov

> On 15 Jul 2020, at 13:18, grey  wrote:
> 
> Приветствую всех!
> 
> 
> Заметил тут одну вещь: в файле access.log время запросов идет не по порядку,
> например:
> 
> 127.0.0.1 - - [12/Jul/2020:23:30:00 +0300] "GET /nginx-status HTTP/1.0" 200
> 117 "-" "-"
> 127.0.0.1 - - [13/Jul/2020:00:15:00 +0300] "GET /nginx-status HTTP/1.0" 200
> 117 "-" "-"
> 127.0.0.1 - - [13/Jul/2020:00:45:00 +0300] "GET /nginx-status HTTP/1.0" 200
> 117 "-" "-"
> 127.0.0.1 - - [12/Jul/2020:03:00:00 +0300] "GET /nginx-status HTTP/1.0" 200
> 117 "-" "-"
> 
> или вот
> 
> 127.0.0.1 - - [12/Jul/2020:02:20:00 +0300] "GET /nginx-status HTTP/1.0" 200
> 117 "-" "-"
> 45.157.*.* - - [12/Jul/2020:02:23:53 +0300] "GET / HTTP/1.1" 403 548 "-"
> "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko)
> Chrome/52.0.2743.116 Safari/537.36"
> 127.0.0.1 - - [12/Jul/2020:02:30:00 +0300] "GET /nginx-status HTTP/1.0" 200
> 117 "-" "-"
> 127.0.0.1 - - [11/Jul/2020:02:40:00 +0300] "GET /nginx-status HTTP/1.0" 200
> 117 "-" "-"
> 
> Начал разбираться. Вот что выяснил - существует две конфигурации для двух
> разных адресов:
> 1. server
> {
>   listen 127.0.0.1:80;
>   server_name 127.0.0.1;
> 
>   location /nginx-status  {   stub_status;}
> }
> 
> 2. server {
>   listen   80;
>   server_name  11.22.33.44;
> 
>   access_log  logs/access.log  combined buffer=64k;
> ...
> }
> 
> Я так понимаю дело в буферизации. Но почему конфигурация 2 с включенной
> буферизацией влияет на конфигурацию 1 на запись логов без буфера? По идее
> логи о состоянии сервера при обращении с локального адреса 127.0.0.1 должны
> писаться сразу в файл, а с внешнего адреса - блоками по 64Кб.
> 
> В принципе, меня устроит однословный ответ разработчиков что все ок и так и
> задумано или это баг :)

В данном случае это один и тот же файл logs/access.log,
а значит и параметры буферизации в разных блоках server общие.
Здесь во 2-м блоке server параметр buffer=64k проапдейтил
существующую конфигурацию, что примерно соответствует:

server {
listen 127.0.0.1:80;
server_name 127.0.0.1;

access_log  logs/access.log  combined buffer=64k;
location /nginx-status  {   stub_status;}
}

server {
listen   80;
server_name  11.22.33.44;

access_log  logs/access.log  combined buffer=64k;
}

Очевидно, что так сделано для удобства, чтобы было
достаточно задать параметры буферизации в одном месте.

-- 
Sergey Kandaurov

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

Re: Путаница в последовательность записей в логах

2020-07-15 Пенетрантность grey
Конфигурация логов для локалхоста не указана, т.к. в доках написано:
===
Умолчание:  

access_log logs/access.log combined;
===

Что в принципе так и есть.

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

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

Re: Путаница в последовательность записей в логах

2020-07-15 Пенетрантность Maksim Kulik
Добрый день.
А где конфигурация access_log для локалхоста? Думаю следует явно указать
его в этом блоке server и проблема пропадет.

ср, 15 июл. 2020 г. в 13:19, grey :

> Приветствую всех!
>
>
> Заметил тут одну вещь: в файле access.log время запросов идет не по
> порядку,
> например:
>
> 1. server
> {
> listen 127.0.0.1:80;
> server_name 127.0.0.1;
>
> location /nginx-status  {   stub_status;}
> }
>
> 2. server {
> listen   80;
> server_name  11.22.33.44;
>
> access_log  logs/access.log  combined buffer=64k;
> ...
> }
>
>
>
> Posted at Nginx Forum:
> https://forum.nginx.org/read.php?21,288706,288706#msg-288706
>
> ___
> 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

Путаница в последовательность записей в логах

2020-07-15 Пенетрантность grey
Приветствую всех!


Заметил тут одну вещь: в файле access.log время запросов идет не по порядку,
например:

127.0.0.1 - - [12/Jul/2020:23:30:00 +0300] "GET /nginx-status HTTP/1.0" 200
117 "-" "-"
127.0.0.1 - - [13/Jul/2020:00:15:00 +0300] "GET /nginx-status HTTP/1.0" 200
117 "-" "-"
127.0.0.1 - - [13/Jul/2020:00:45:00 +0300] "GET /nginx-status HTTP/1.0" 200
117 "-" "-"
127.0.0.1 - - [12/Jul/2020:03:00:00 +0300] "GET /nginx-status HTTP/1.0" 200
117 "-" "-"

или вот

127.0.0.1 - - [12/Jul/2020:02:20:00 +0300] "GET /nginx-status HTTP/1.0" 200
117 "-" "-"
45.157.*.* - - [12/Jul/2020:02:23:53 +0300] "GET / HTTP/1.1" 403 548 "-"
"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko)
Chrome/52.0.2743.116 Safari/537.36"
127.0.0.1 - - [12/Jul/2020:02:30:00 +0300] "GET /nginx-status HTTP/1.0" 200
117 "-" "-"
127.0.0.1 - - [11/Jul/2020:02:40:00 +0300] "GET /nginx-status HTTP/1.0" 200
117 "-" "-"

Начал разбираться. Вот что выяснил - существует две конфигурации для двух
разных адресов:
1. server
{
listen 127.0.0.1:80;
server_name 127.0.0.1;

location /nginx-status  {   stub_status;}
}

2. server {
listen   80;
server_name  11.22.33.44;

access_log  logs/access.log  combined buffer=64k;
...
}

Я так понимаю дело в буферизации. Но почему конфигурация 2 с включенной
буферизацией влияет на конфигурацию 1 на запись логов без буфера? По идее
логи о состоянии сервера при обращении с локального адреса 127.0.0.1 должны
писаться сразу в файл, а с внешнего адреса - блоками по 64Кб.

В принципе, меня устроит однословный ответ разработчиков что все ок и так и
задумано или это баг :)

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

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

Re: Редирект с http на https на одном и том же сервере

2020-07-15 Пенетрантность Maksim Kulik
Можно еще короче. В блоке сервера для 80 порта указать:

return 301 https://$host$request_uri;



ср, 15 июл. 2020 г. в 11:14, Dmytro Lavryk :

>if ($ssl_protocol = "") {
> rewrite ^   https://$host$request_uri
>  permanent;
> }
>
>
>  Увімкнуто ср, 15 лип. 2020 10:40:46 +0300 *akoval
> >* написав 
>
> Приветствую всех!
> Нужна помощь...
>
> Раньше был сайт http://site1.com на одном хостинге (apache). Теперь
> перенесли его на другой хостинг с сертификатом https://site1.com (nginx).
> Теперь мне нужно чтобы новый сайт грамотно редиректил http на https,
> то-есть:
> http://site1.com/page1 -> https://site1.com/art/page1
> http://site1.com/page2 -> https://site1.com/blog/page11
> ...
>
> Сейчас в nginx на https://site1.com у меня такие блоки:
>
> server {
> listen 80;
> server_name www.site1.com site1.com;
>
> rewrite http://site1.com/page1 https://site1.com/page1 permanent;
>
> if ($request_uri = /index.html) {
> return 301 https://site1.com;
> }
> return 301 https://site1.com$request_uri;
> }
>
> server {
> listen 443 default ssl;
> server_name site1.com;
> rewrite ^/(.*)/$ /$1 permanent;
>
> root /.../public;
>
> ssl_certificate /...;
> ssl_certificate_key /...;
> ssl_session_timeout 5m;
> }
>
> но rewrite http://site1.com/page1 https://site1.com/page1 permanent; не
> срабатывает.
> что не так делаю?
>
> Posted at Nginx Forum:
> https://forum.nginx.org/read.php?21,288702,288702#msg-288702
>
> ___
> 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
___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

уязвимость в реверс-проксировании

2020-07-15 Пенетрантность Илья Шипицин
привет!

конкретики, к сожалению, почти нет
https://portal.msrc.microsoft.com/en-us/security-guidance/advisory/ADV28

если у кого-то есть конкретика, поделитесь, плиз ?

Илья Шипицин
___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: Редирект с http на https на одном и том же сервере

2020-07-15 Пенетрантность Dmytro Lavryk
   if ($ssl_protocol = "") {

    rewrite ^   https://sorp.ae$request_uri permanent;

    }


___

С уважением, Дмитрий Лаврик



WWW: https://dl.sm.ua

E-mail: mailto:m...@dl.sm.ua

Telegram: dlsumy

Тел. (viber): +380506037953

Skype: dmytro.lavryk

Facebook: https://www.facebook.com/dmytro.lavryk





 Увімкнуто ср, 15 лип. 2020 10:40:46 +0300 akoval 
 написав 


Приветствую всех!
Нужна помощь...

Раньше был сайт http://site1.com на одном хостинге (apache). Теперь
перенесли его на другой хостинг с сертификатом https://site1.com (nginx).
Теперь мне нужно чтобы новый сайт грамотно редиректил http на https,
то-есть:
http://site1.com/page1 -> https://site1.com/art/page1
http://site1.com/page2 -> https://site1.com/blog/page11
...

Сейчас в nginx на https://site1.com у меня такие блоки:

server {
 listen 80;
 server_name www.site1.com site1.com;
 
 rewrite http://site1.com/page1 https://site1.com/page1 permanent;

 if ($request_uri = /index.html) {
 return 301 https://site1.com;
 }
 return 301 https://site1.com$request_uri;
}

server {
 listen 443 default ssl;
 server_name site1.com;
 rewrite ^/(.*)/$ /$1 permanent;

 root /.../public;

 ssl_certificate /...;
 ssl_certificate_key /...;
 ssl_session_timeout 5m;
}

но rewrite http://site1.com/page1 https://site1.com/page1 permanent; не
срабатывает.
что не так делаю?

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

___
nginx-ru mailing list
mailto: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

Редирект с http на https на одном и том же сервере

2020-07-15 Пенетрантность akoval
Приветствую всех!
Нужна помощь...

Раньше был сайт http://site1.com на одном хостинге (apache). Теперь
перенесли его на другой хостинг с сертификатом https://site1.com (nginx).
Теперь мне нужно чтобы новый сайт грамотно редиректил http на https,
то-есть:
http://site1.com/page1 -> https://site1.com/art/page1
http://site1.com/page2 -> https://site1.com/blog/page11
...

Сейчас в nginx на https://site1.com у меня такие блоки:

server {
  listen 80;
  server_name www.site1.com site1.com;
  
  rewrite http://site1.com/page1 https://site1.com/page1 permanent;

  if ($request_uri = /index.html) {
return 301 https://site1.com;
  }
  return 301 https://site1.com$request_uri;
}

server {
  listen 443 default ssl;
  server_name site1.com;
  rewrite ^/(.*)/$ /$1 permanent;

  root /.../public;

  ssl_certificate /...;
  ssl_certificate_key /...;
  ssl_session_timeout 5m;
}

но rewrite http://site1.com/page1 https://site1.com/page1 permanent; не
срабатывает.
что не так делаю?

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

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