Ответы пользователя по тегу Nginx
  • DOCKER: Nginx + php-fpm + Bitrix24 | Как настроить nginx для перенаправлений на локальный push-server?

    @luxter
    Я не разбираюсь абсолютно в настройках Nginx...

    При этом вы пытаетесь что-то затащить в докер :) Посмотрите вот сюда, например. Тут описан вариант запуска как раз для разработки, что вы и хотите. Можно запускать как под Linux, так и через Docker Desktop + WSL2 в винде.
    Ответ написан
    Комментировать
  • Редирект в Nginx любых запросов и ссылок на сайт на главную страницу?

    @luxter
    Вот такой вариант ещё:

    location ~* (?<=\/).* {
            return 301 /;
    }
    
    location = / {
            proxy_pass http://127.0.0.1:8887/;
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header X-Forwarded-Proto $scheme;
            proxy_set_header HTTPS YES;
            proxy_connect_timeout 120;
            proxy_send_timeout 120;
            proxy_read_timeout 180;
    }


    rewrite работает, но крайне излишний здесь. можно указать регулярку для location, в которой будет 301 редирект на главную (корень /), а для главной указать location со знаком равно - в таком nginx прекращает все дальнейшие поиски при совпадении и позволяет избежать циклических редиректов (too many redirects), если таковые возникают.
    Ответ написан
    Комментировать
  • Как настроить nginx reverse proxy для работы с nginx Битрикс с ssl на letsencrypt?

    @luxter
    Столкнулся с похожей проблемой, но сертификат был на внешнем nginx:

    Nginx proxy:
    server {
            server_name domain.ru;
            ssl on;
            ssl_certificate ...
            ssl_certificate_key ...
            ssl_ciphers EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH;
            ssl_prefer_server_ciphers on;
            ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    
    
            listen 443 ssl;
    
    location / {
                    proxy_pass http://10.16.0.33:80;
                    proxy_redirect http://10.16.0.33:80 /;
                    proxy_set_header Host $host:443;
                    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                    proxy_set_header X-Forwarded-Proto $scheme;
                    proxy_set_header HTTPS YES;
    
            }
    }


    Вируталка bitrix - /etc/nginx/bx/site_avaliable/bx_ext_domain.ru.conf::
    Было: proxy_set_header      Host $host:80;
    Стало: proxy_set_header      Host $host;


    Все остальное дефолтное.
    Ответ написан
    5 комментариев
  • Как ограничить часть портала Extranet в Bitrix?

    @luxter Автор вопроса
    Такой вариант можно попробовать.

    В контексте http
    map $http_referer $pass_ref {
            default 0;
            "~<domain.ru>" 1;
    }
    
            map $remote_addr $pass_ip {
            default 0;
            <ext IP> 1;
    }
    
            map $pass_ref:$pass_ip $block {
            default 1;
            1:0 0;
            0:1 0;
            1:1 0;
            0:0 1;
    }


    if ($block = "1") {
                   return 404;
                           }
    Ответ написан
    Комментировать