LINUX.ORG.RU

73
Всего сообщений: 1034

letsencrypt два сертификата на одно имя

Есть ли ограничения на одновременное использование wildcard сертификата и обычного (на конкретное имя) ?

Сценарий примерно такой: есть nginx с белым адресов и wildcard-сертификатом, который выполняет запросы на внутренние https сервера.

Не будет ли проблемы, если сначала клиент подключился внутри сети и обратился по «именному» сертификату, а потом подключаясь снаружи получает wildcard-сертификат ?

 , , ,

vel ()

Как передать файлы из директории приложения в docker контейнер с nginx

Всем привет, столкнулся с проблемой, возможно тривиальной Выполняю команду: docker run --rm -p 2080:80 -v $PWD/app:/usr/share/nginx/html:ro nginx

http://prntscr.com/k6nhmj

Ну и я ожидаю что он мне покажет что в моем app/index.html Он же говорит '403 Forbidden'

с помощью команды docker exec -it [CONTAINER ID] /bin/bash я захожу в свой контейнер, что бы посмотреть в чем дело, но оказывается что файла index.html по пути /usr/share/nginx/html вовсе нет.

Вопрос.. Почему? Что я пропустил, уже очень много времени убил на такой простой вроде бы, ознакомительный шаг. Прошу помощи

 , , ,

mepoooe ()

Увеличение времени отклика главной страницы при загрузке. Php-FPM + NGINX + Docker

Всем привет!

Есть облачное хранилище, на базе NextCloud, крутится в докер-контейнере:

Контейнер Nextcloud с PHP-FPM
Контейнер с Nginx
Контейнер с БД

Проблема в том, что при загрузке с хранилища либо закачивания больших объемов файлов на сервер, увеличивается время отклика главной страницы (веб-морды), вплоть до 15 секунд, хотя нагрузка на CPU/память при этом небольшая.

Сервер 8-ядерный, оперативки 8 GB. Канал 1 GB. Подскажите, куда копать, что можно подкрутить? Проблема в конфиге Nginx, или в настройках Docker?

Вот графики:
https://pic4a.ru/iEBh/

Конфиг Nginx стандартный, рекомендуемый разработчиком NextCloud (донастраивал там только limit_rate, чтобы после скачивания 50 мегабайт скорость обрезалась до 640 Kb/sec.


# configuration file /etc/nginx/nginx.conf:
user  www-data;
worker_processes 8;

error_log  /var/log/nginx/error.log warn;
pid        /var/run/nginx.pid;


events {
    worker_connections  1024;
}


http {
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;

    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log  /var/log/nginx/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

#   keepalive_timeout 3600;

    #gzip  on;

    upstream php-handler {
        server app:9000;
    }

    server {
        listen 80;
        listen 443 default_server ssl;
        ssl_certificate /etc/nginx/onlyoffice.crt;
        ssl_certificate_key /etc/nginx/onlyoffice.key;
        server_name cloud.domru.ru;

        # Add headers to serve security related headers
        # Before enabling Strict-Transport-Security headers please read into this
        # topic first.
         add_header Strict-Transport-Security "max-age=15768000;
         includeSubDomains; preload;";
        #
        # WARNING: Only add the preload option once you read about
        # the consequences in https://hstspreload.org/. This option
        # will add the domain to a hardcoded list that is shipped
        # in all major browsers and getting removed from this list
        # could take several months.
        add_header X-Content-Type-Options nosniff;
        add_header X-XSS-Protection "1; mode=block";
        add_header X-Robots-Tag none;
        add_header X-Download-Options noopen;
        add_header X-Permitted-Cross-Domain-Policies none;

        root /var/www/html;

        location = /robots.txt {
            allow all;
            log_not_found off;
            access_log off;
        }

        # The following 2 rules are only needed for the user_webfinger app.
        # Uncomment it if you're planning to use this app.
        #rewrite ^/.well-known/host-meta /public.php?service=host-meta last;
        #rewrite ^/.well-known/host-meta.json /public.php?service=host-meta-json
        # last;

        location = /.well-known/carddav {
                        limit_rate_after 100m;
                        limit_rate 640k;

            return 301 $scheme://$host/remote.php/dav;
        }
        location = /.well-known/caldav {
                        limit_rate_after 100m;
                        limit_rate 640k;

            return 301 $scheme://$host/remote.php/dav;
        }

        # set max upload size
        client_max_body_size 10G;

# proxy_max_temp_file_size 10G;
#               fastcgi_request_buffering off;
#               fastcgi_buffers 4 256k;
#               fastcgi_busy_buffers_size 256k;
#               fastcgi_temp_file_write_size 256k;

                fastcgi_read_timeout 3600;
                fastcgi_send_timeout 3600;

# Enable gzip but do not remove ETag headers
        gzip on;
        gzip_vary on;
        gzip_comp_level 4;
        gzip_min_length 256;
        gzip_proxied expired no-cache no-store private no_last_modified no_etag auth;
        gzip_types application/atom+xml application/javascript application/json application/ld+json application/manifest+json application/rss+xml application/vnd.geo+json application/vnd.ms-fontobject application/x-font-ttf application/x-web-app-manifest+json application/xhtml+xml application/xml font/opentype image/bmp image/svg+xml image/x-icon text/cache-manifest text/css text/plain text/vcard text/vnd.rim.location.xloc text/vtt text/x-component text/x-cross-domain-policy;

        # Uncomment if your server is build with the ngx_pagespeed module
        # This module is currently not supported.
        #pagespeed off;

        location / {
            rewrite ^ /index.php$uri;
        }

        location ~ ^/(?:build|tests|config|lib|3rdparty|templates|data)/ {
            deny all;
        }
        location ~ ^/(?:\.|autotest|occ|issue|indie|db_|console) {
            deny all;
        }

        location ~ ^/(?:index|remote|public|cron|core/ajax/update|status|ocs/v[12]|updater/.+|ocs-provider/.+)\.php(?:$|/) {
            fastcgi_split_path_info ^(.+\.php)(/.*)$;
            include fastcgi_params;
            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
            fastcgi_param PATH_INFO $fastcgi_path_info;
            # fastcgi_param HTTPS on;
            #Avoid sending the security headers twice
            fastcgi_param modHeadersAvailable true;
            fastcgi_param front_controller_active true;
            fastcgi_pass php-handler;
            fastcgi_intercept_errors on;
            fastcgi_request_buffering off;
                        limit_rate_after 100m;
                        limit_rate 640k;
        }

        location ~ ^/(?:updater|ocs-provider)(?:$|/) {
            try_files $uri/ =404;
            index index.php;
        }

        # Adding the cache control header for js and css files
        # Make sure it is BELOW the PHP block
        location ~ \.(?:css|js|woff|svg|gif)$ {
            try_files $uri /index.php$uri$is_args$args;
            add_header Cache-Control "public, max-age=15778463";
            # Add headers to serve security related headers (It is intended to
            # have those duplicated to the ones above)
            # Before enabling Strict-Transport-Security headers please read into
            # this topic first.
            # add_header Strict-Transport-Security "max-age=15768000;
            #  includeSubDomains; preload;";
            #
            # WARNING: Only add the preload option once you read about
            # the consequences in https://hstspreload.org/. This option
            # will add the domain to a hardcoded list that is shipped
            # in all major browsers and getting removed from this list
            # could take several months.
            add_header X-Content-Type-Options nosniff;
            add_header X-XSS-Protection "1; mode=block";
            add_header X-Robots-Tag none;
            add_header X-Download-Options noopen;
            add_header X-Permitted-Cross-Domain-Policies none;
            # Optional: Don't log access to assets
            access_log off;
        }

        location ~ \.(?:png|html|ttf|ico|jpg|jpeg)$ {
            try_files $uri /index.php$uri$is_args$args;
            # Optional: Don't log access to other assets
            access_log off;
        }
    }

}


# configuration file /etc/nginx/mime.types:

types {
    text/html                                        html htm shtml;
    text/css                                         css;
    text/xml                                         xml;
    image/gif                                        gif;
    image/jpeg                                       jpeg jpg;
    application/javascript                           js;
    application/atom+xml                             atom;
    application/rss+xml                              rss;

    text/mathml                                      mml;
    text/plain                                       txt;
    text/vnd.sun.j2me.app-descriptor                 jad;
    text/vnd.wap.wml                                 wml;
    text/x-component                                 htc;

    image/png                                        png;
    image/svg+xml                                    svg svgz;
    image/tiff                                       tif tiff;
    image/vnd.wap.wbmp                               wbmp;
    image/webp                                       webp;
    image/x-icon                                     ico;
    image/x-jng                                      jng;
    image/x-ms-bmp                                   bmp;

    application/font-woff                            woff;
    application/java-archive                         jar war ear;
    application/json                                 json;
    application/mac-binhex40                         hqx;
    application/msword                               doc;
    application/pdf                                  pdf;
    application/postscript                           ps eps ai;
    application/rtf                                  rtf;
    application/vnd.apple.mpegurl                    m3u8;
    application/vnd.google-earth.kml+xml             kml;
    application/vnd.google-earth.kmz                 kmz;
    application/vnd.ms-excel                         xls;
    application/vnd.ms-fontobject                    eot;
    application/vnd.ms-powerpoint                    ppt;
    application/vnd.oasis.opendocument.graphics      odg;
    application/vnd.oasis.opendocument.presentation  odp;
    application/vnd.oasis.opendocument.spreadsheet   ods;
    application/vnd.oasis.opendocument.text          odt;
    application/vnd.openxmlformats-officedocument.presentationml.presentation
                                                     pptx;
    application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
                                                     xlsx;
    application/vnd.openxmlformats-officedocument.wordprocessingml.document
                                                     docx;
    application/vnd.wap.wmlc                         wmlc;
    application/x-7z-compressed                      7z;
    application/x-cocoa                              cco;
    application/x-java-archive-diff                  jardiff;
    application/x-java-jnlp-file                     jnlp;
    application/x-makeself                           run;
    application/x-perl                               pl pm;
    application/x-pilot                              prc pdb;
    application/x-rar-compressed                     rar;
    application/x-redhat-package-manager             rpm;
    application/x-sea                                sea;
    application/x-shockwave-flash                    swf;
    application/x-stuffit                            sit;
    application/x-tcl                                tcl tk;
    application/x-x509-ca-cert                       der pem crt;
    application/x-xpinstall                          xpi;
    application/xhtml+xml                            xhtml;
    application/xspf+xml                             xspf;
    application/zip                                  zip;

    application/octet-stream                         bin exe dll;
    application/octet-stream                         deb;
    application/octet-stream                         dmg;
    application/octet-stream                         iso img;
    application/octet-stream                         msi msp msm;

    audio/midi                                       mid midi kar;
    audio/mpeg                                       mp3;
    audio/ogg                                        ogg;
    audio/x-m4a                                      m4a;
    audio/x-realaudio                                ra;

    video/3gpp                                       3gpp 3gp;
    video/mp2t                                       ts;
    video/mp4                                        mp4;
    video/mpeg                                       mpeg mpg;
    video/quicktime                                  mov;
    video/webm                                       webm;
    video/x-flv                                      flv;
    video/x-m4v                                      m4v;
    video/x-mng                                      mng;
    video/x-ms-asf                                   asx asf;
    video/x-ms-wmv                                   wmv;
    video/x-msvideo                                  avi;
}

# configuration file /etc/nginx/fastcgi_params:

fastcgi_param  QUERY_STRING       $query_string;
fastcgi_param  REQUEST_METHOD     $request_method;
fastcgi_param  CONTENT_TYPE       $content_type;
fastcgi_param  CONTENT_LENGTH     $content_length;

fastcgi_param  SCRIPT_NAME        $fastcgi_script_name;
fastcgi_param  REQUEST_URI        $request_uri;
fastcgi_param  DOCUMENT_URI       $document_uri;
fastcgi_param  DOCUMENT_ROOT      $document_root;
fastcgi_param  SERVER_PROTOCOL    $server_protocol;
fastcgi_param  REQUEST_SCHEME     $scheme;
fastcgi_param  HTTPS              $https if_not_empty;

fastcgi_param  GATEWAY_INTERFACE  CGI/1.1;
fastcgi_param  SERVER_SOFTWARE    nginx/$nginx_version;

fastcgi_param  REMOTE_ADDR        $remote_addr;
fastcgi_param  REMOTE_PORT        $remote_port;
fastcgi_param  SERVER_ADDR        $server_addr;
fastcgi_param  SERVER_PORT        $server_port;
fastcgi_param  SERVER_NAME        $server_name;

# PHP only, required if PHP was built with --enable-force-cgi-redirect
fastcgi_param  REDIRECT_STATUS    200;



Параметры PHP-FPM
upload_max_filesize=4096M
post_max_size=511M
memory_limit=4096M
mbstring.func_overload=0
always_populate_raw_post_data=-1
default_charset='UTF-8'
output_buffering=0

 , ,

Fess88 ()

nginx - папка без https

Здравствуйте.

Собственно вопрос в названии топика. Мне нужно скачивать wget'ом кое-что из папки /блабла без ssl. То есть разрешить доступ к папке - /блабла без https.

Если не затруднит, покажите пример. Спасибо.

 

stD ()

Нужен Системный админ Linux!!!

Всем привет!

Я занимаюсь подбором для компании Мобитэль и в данный момент мне нужен Системный админ Linux с хорошим знание стека TCP/IP, знание Asterisk на базе FreePBX, знание Postfix, Dovecot, SpamAssasin (важно также понимание как работает электронная почта) и Samba (желательно 4-ка). А точно, ещё опыт работы с Web серверами (nginx), ну и написание скриптов никто не отменял (shell/python)

Чем предстоит заниматься: поддерживать серверную инфраструктуру на базе Debian Linux, настраивать и поддерживать веб сервера компании, поддерживать работоспособность почты, настраивать и поддерживать VoIP телефонию на базе Asterisk, поддерживать Active Directory на базе Samba+.

Linux очень много, так что мне здесь человечек нужен, которые прям фанатеет по нему.

Что могу предложить:

Во-первых - деньги: вилка у меня до 130к на руки, но готовы обсуждать, если кандидат жжжет!

Во-вторых - бесплатная столовая с завтраком и обедом (на обеде выбор блюд).

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

В четвертых - ДМС(куда ж без этого то, да Москве!).

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

Клише про «дружный коллектив» и «рост» писать не буду, так как это само собой разумеющиеся: компания молодая, по стеку технологий напоминает стартап, и делаем мы игрушки (хоть и веб, но все же).

Пишите!!!

Отвечаю быстро и оперативно.

Контакты: почта dr@mobitel.ltd, телега @Kenjuy

Есть ещё телефон, можно туда писать на ватсап - +7(905)588-02-97

 , , ,

Kenjuy ()

Nginx + PHP-FPM - ограничение скорости загрузки файлов на сервер

Всем привет!

Знатоки nginx, подскажите пожалуйста, как можно ограничить скорость загрузки файлов на сервер?

Скачку ограничил путем добавления директив

limit_rate_after 100m; // первые 100 мб скачиваются без ограничений
limit_rate 640k; // затем скорость обрезается до 640к/сек


в location, которые обрабатывает php-страницы.

Но upload на сервер это не обрезает по скорости.

Подскажите, можно ли подобным образом как-то ограничить именно upload?

 ,

Fess88 ()

Отправка потока rtmp через интернет на nginx сервер

День добрый. Пересмотрел кучу гайдов, почитал кучу форумов. Везде решения таковы что БЕРУТ rtmp поток и передают по локалке на nginx сервер(в параметрах rtmp ставят локальный адрес ПК).

Я же преследую цель передать rtmp поток с одного ПК(находящегося на расстоянии) на другой(сервер nginx) ЕСТЕСТВЕННО находящийся не в одной сети с отправителем:) В дальнейшем уже с nginx поток «слушать» тем же obs или vmix или другим софтом....Важен именно момент передачи самого rtmp потока через инет(а не локалку) и прием его на ngnix. P.S. понимаю так, что в параметрах отправления rtmp должен стоять именно внешний адрес linux nginx сервера...какой тогда будет формат этой строки...можно ли использовать утилиту bdmcapture?

 , ,

shursh ()

Ошибка «Соединение сброшено» на стороне клиента

Не можем отловить ошибку, у клиента несколько пользователей работает в системе с одного IP, в случайном порядке при выполнении POST формы появляются тормоза и вылетает ошибка Соединение сброшено. Установлен Nginx, за ним Apache.

Поиск по логам Nginx и Apache с указанием этого IP ничего не дал в эти моменты никаких ошибок в логах не фиксируется.

Куда рыть?

 , , ,

trefeeevka ()

Не работает домен по https в nginx

Здравствуйте. Имеется nginx, который я вручную поставил добавляяя вручную каждый модуль. Вот так конфигурил:

./configure --with-http_ssl_module --conf-path=/etc/nginx/nginx.conf --add-module=/opt/geoip2/ngx_http_geoip2_module --with-http_dav_module --with-http_gunzip_module --with-http_gzip_static_module --http-log-path=/var/log/nginx/access.log --error-log-path=/var/log/nginx/error.log --with-debug --with-pcre-jit --with-ipv6 --with-http_realip_module --with-http_auth_request_module --with-http_addition_module --with-http_dav_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_v2_module --with-http_sub_module --with-stream --with-mail --with-threads --with-stream_ssl_module --with-mail_ssl_module

Есть два сайта в sites-enabled: api и panel. api работает по http и все норм. Но panel работает по https. Вроде как все модули подключил ssl, но всеравно не хочет заходить. Конфига panel:

server {
   listen 80;
   server_name panel.MY_DOMEN.ru;
 
   location / {
       return 301 https://$server_name$request_uri;
   }
}
 
map $http_upgrade $connection_upgrade {
        default upgrade;
        '' close;
}
# HTTPS server
server {
   listen 443 ssl http2;
   server_name panel.MY_DOMEN.ru;
 
   access_log /var/log/nginx/panel.access.log;
   error_log /var/log/nginx/panel.error.log;
 
   include snippets/ssl-MY_PROJECT.conf;
   include snippets/ssl-params.conf;
 
   rewrite ^(/)$ https://$host/admin/$1 permanent;
 
   location /admin/ws {
      proxy_pass  http://localhost:9000;
 
      proxy_set_header Host $host;
      proxy_http_version 1.1;
      proxy_set_header Upgrade $http_upgrade;
      proxy_set_header Connection "upgrade";
      proxy_read_timeout 1000s;
 
      proxy_cache_bypass 1;
      proxy_no_cache 1;
   }
 
   # serve assets or request page from proxy (if asset not found)
   location / {
      try_files $uri @proxy;
   }
 
   # the play web server
   location @proxy {
      proxy_pass  http://localhost:9000;
      proxy_redirect off;
      proxy_buffering off;
 
      #send protocol info to play server
      proxy_set_header        Host               $host;
      proxy_set_header        X-Real-IP          $remote_addr;
      proxy_set_header        X-Forwarded-Proto  https;
      proxy_set_header        X-Forwarded-Ssl    on;
      proxy_set_header        X-Forwarded-For    $proxy_add_x_forwarded_for;
   }

До того как ставил nginx с нуля, был скачан nginx по команде sudo apt-get install nginx. После этого я удалил командой sudo apt-get purge nginx nginx-common и поставил c нуля.

Ключи в папке snippets уже были. Нужно ли генерить новые ключи после каждой инсталяции nginx? И вообще, как думаете почему я не могу зайти по домену panel.MY_DOMEN.ru? Раньше этот домен работал в прошлом nginx.

 

stim644 ()

Auth_basic и proxy_pass в Nginx

Наблюдаю какую-то нелогичное поведение при использовании auth_basic
Мне нужно временно закрыть доступ к главной аутентификацией, при этом всё остальное закрывать не нужно
Конфиг:

   location / {
     auth_basic           "Wassup dawg";
     auth_basic_user_file /home/vasyan/auth/.htpasswd;
     root   /home/vasyan/testapp;
     index  index.html;
     try_files $uri $uri/ /;
   }

   location /api {
     proxy_pass http://someupstream
   }


Почему то при каждом обращении к /api возникает запрос аутентификации, даже если добавить там явно auth_basic off
Гугл находит аналогичную проблему без решения
https://serverfault.com/questions/796028/nginx-proxy-pass-and-auth-basic-prom...

 ,

zolden ()

nginx proxy_pass + rewrite + key

Добрый день. Снова обращаюсь на спасительный форум )

Задача перенаправить и подставить ключ в внешний URL, но сам ключ не засветить пользователю (в яндекс апи ключ - но это не важно)

Пытаюсь сделать так. Браузер шлёт:

http://(мой_домен).ru/platform/portal/api-maps/2.1/

и улетает:

https://enterprise.api-maps.yandex.ru/2.1/?lang=ru_RU&apikey=(тут_сам_ключ)

Сделал вот так:

set $api_key &apikey=(тут сам ключ);
set $lang ?lang=ru_RU;

location /platform/portal/api-maps/ {
rewrite ^/platform/portal/api-maps/(.+)$ https://enterprise.api-maps.yandex.ru/$1$lang$api_key;
Всё отлично работает, но ключ видно пользователю при переадресации. Это конечно недопустимо.

А далее пошли признания в безграмотности :) - пытаюсь сделать через прокси:

    location /platform/portal/api-maps/ {
    rewrite ^/platform/portal/api-maps/(.+)$ ^/platform/portal/api-maps/$1$lang$api_key;
    proxy_pass https://enterprise.api-maps.yandex.ru/;
не работает. Эксперементирую, то 404 то 500.

Друзья, подскажите пожалуйста как правильно.

(И уроки по nginx на эту тематику если не сложно)

Спасибо за ваше внимание!

 

ishk0 ()

Непонятный редирект в Nginx

Окей, лорогугл «Почему Nginx делает редирект да ещё и на внутренний порт»?
Вводные:
nginx.conf

  server {
           listen       1234 ssl;
           server_name  mysweetsupersite.ru;

           location /testapp {
             root   /home/vasyan/apps/;
             index  index.html index.htm;
             try_files $uri $uri/ /;
           }
...

Порт 1234 заNATен на 443
Файлы сайта лежат в /home/vasyan/apps/testapp

Вопрос:
если пойти на https://mysweetsupersite.ru/testapp/ то всё ок
если пойти на https://mysweetsupersite.ru/testapp то Nginx отвечает
< HTTP/1.1 301 Moved Permanently
< Location: https://mysweetsupersite.ru:1234/testapp/

(проверяю curl'ом)

Почему так?

 ,

zolden ()

Зеркалирование веб-сервиса на несколько доменов

Всем привет,

Имеется некий веб-сервис, который обычно работает на одном домене. Например, форум. Или вики. Или что-либо ещё. Логин обычно привязывается к кукам, которые тоже привязаны к домену. Необходимо сделать так, чтобы сервис стал доступен с нескольких разных доменов. Без редиректа.

Для пояснения:

example.com   ->  
example.onion ->  | same service |
another.net   ->  

Хостинг - VPS с Докером. Я рассматриваю следующую схему:

  1. Единственный контейнер с Nginx для обработки всех запросов
  2. N копий контейнера с кодом и настройками сервиса — по одной для каждого домена
  3. Единственная общая база данных (или другое хранилище)

Насколько жизнеспособен такой подход? Может быть есть известные проблемы? Как-нибудь это можно прооптимизировать — например, избежать копий контейнера с сервисом? Что-нибудь типа продвинутого конфига Nginx чтобы конвертировать URL и куки?

Заранее спасибо!

P.S. Для чего это нужно? Например, для обхода блокировок. Для предоставления того же сервиса через домен в зоне .onion. Подробнее о нашем проекте: https://deeptechgroup.net

 , , , ,

deeptechgroup ()

geoip и https

Здравствуйте.

Для одного моего сайта потребовалось запретить вход из определеных стран, чего добился с помощью geoip + nginx.

Проблема в новь появилась что после перевода сайта на ssl доступ в новь был открыт для всех стран.

Подскажите где что исправить?

Заранее спасибо!

 , ,

serhio792 ()

Помогите настроить редиректы nginx

Всем добра, помогите пожалуйста правильно прописать правила под nginx, сейчас работаю на apache, пытаюсь сайты перенести на nginx, но увы кроме главной страницы ничего не работает

Текущие правила htaccess:

# Redirect to www
RewriteCond %{REQUEST_URI} !robots\.txt$
RewriteCond %{HTTP_HOST} !^www [NC]
RewriteRule .* http://www.%{HTTP_HOST}/$0 [R=301,L]


# Redirect urls with no trailing slash
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !^/odminka/
RewriteCond %{REQUEST_URI} !^/guide
RewriteCond %{REQUEST_URI} !\.xml$
RewriteCond %{REQUEST_URI} !\.txt$
 RewriteCond %{REQUEST_URI} !/$
RewriteRule .+ $0/ [R=301,L]


# Allow any files or directories that exist to be displayed directly
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

# Rewrite all other URLs to index.php/URL
RewriteRule .* index.php/$0 [PT]

AddDefaultCharset utf-8
Фреймворк kohana

 , ,

papik ()

Случайно удалил сертификат.

Добрый день. По глупой ошибке удалил всю папку

/etc/letsencrypt/live/certificates


Ну и вследствие чего у меня умер nginx. 
nginx: [emerg] BIO_new_file("/etc/letsencrypt/live/certificates/fullchain.pem") failed (SSL: error:02001002:system library:fopen:No such file or directory:fopen('/etc/letsencrypt/live/certificates/fullchain.pem','r') error:2006D080:BIO routines:BIO_new_file:no such file)
nginx: configuration file /etc/nginx/nginx.conf test failed

Подскажите кто сталкивался и как можно лечить? 

 ,

RaptorsWings ()

Nginx статика обновление

Здравствуйте.

Не знал как правильно озаглавить пост, поэтому прошу прощения.

Вопрос вот в чём: обновил внешний вид сайта (css и т.д.), как заставить браузеры пользователей очистить свою историю и кеш?

Можно ли это сделать средствами nginx?

 

stD ()

Выставить дефолтные права для новых файлов, создаваемых из PHP

Доброй ночи. Нужно сделать так, чтобы пых всем «своим» файлам задавал определенные права (пусть будут 0777). (Скрипт постоянно сношает файловую систему, тесты никак пройти не может, вечно спотыкается на нехватке прав для им же созданного очередного файла. Затрахался досмерти. Разводить chmod'ское месиво неохота, хочу уже просто всем выдавать 777 и перекреститься.)

Пытаюсь оседлать сабж посредством umask. Задал в /etc/php/7.2/fpm/pool.d/www.conf окружение: env[UMASK] = 0000. phpinfo() подтверждает, что mask подхватился. Создаю файл: (file_put_contents): 0664.

Ок, идем в лоб:

<?php
umask( 0000 );
file_put_contents( 'test.log', '' );
И угадайте, что? конечно же 0664!

Пожалуйста, разъясните, кто из нас сошел с ума? Какие еще танцы разучить, где докупить бубенцов? Сил моих больше нет. Я почти готов капитулировать.

Благодарю сердешно.

 , , , ,

WennY ()

Nginx conflicting parameter. Проксирование большого числа парметров через map

Есть большое кол-во параметров (мак адресов) которые прилетают в определённой куке, которые я соответственно достаю из этой куки функцией и проксирую на нужный мне сервер. Пример /etc/nginx/sites-available:

map $cookie_name $backend {
           default nameserver;
           AA:BB:CC:DD:EE:F1 nameserver;
           AA:BB:CC:DD:EE:F2 nameserver;
           .....
           AA:BB:CC:DD:EE:F3 nameserver;
С маленьким количеством мак адресов всё работает, когда добавляю 100 строк появляется ошибка:
conflicting parameter "AA:BB:CC:DD:EE:F3" in /etc/nginx/sites-enabled/default:67
Ставлю в /etc/nginx/sites-available на этой строке знак # ошибка пропадает и появляется новая на следующей строке и т.д.

 ,

forzasakh ()

Почему скачивает файл.

Когда захожу на сайт у меня сразу начинает скачивать файл index.php, который указан в конфиге nginx. Так не должно быть потому что до того момента пока не начал переводить сайт на https , все работало нормально. Права на папки и файлы есть. Сам проект на wordpress. Подскажите пожалуйста.

server {
            server_name site.com;
                        listen 80; # managed by Certbot
                        access_log off;
                        #error_log on;
                        root /home/site.com/ct;
                        index index.php index.html index.htm;
    listen 443 ssl; # managed by Certbot
    ssl_certificate /etc/letsencrypt/live/site.com/fullchain.pem; # managed by Certbot
    ssl_certificate_key /etc/letsencrypt/live/site.com/privkey.pem; # managed by Certbot
    include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
    ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
}
server {
        listen   80;
        access_log off;
        error_log on;
        error_log /home/site.com/logs/ct.error.log;
        root /home/site.com/ct;
        # include /etc/nginx/conf/ddos2.conf;
        index index.php index.html index.htm;
        server_name site.com;
        rewrite ^ https://site.com$request_uri? permanent; #301 redirect;
        client_max_body_size 32m;
location / {
        try_files $uri $uri/ /index.php?$args;
}
        location ~ \.php$ {
                fastcgi_split_path_info ^(.+\.php)(/.+)$;
                include /etc/nginx/fastcgi_params;
#               fastcgi_pass   unix:/var/run/php5-fpm.sock;
                fastcgi_pass   127.0.0.1:9000;
                fastcgi_index index.php;
                fastcgi_connect_timeout 250;
                fastcgi_send_timeout 250;
                fastcgi_read_timeout 250;
                fastcgi_buffer_size 256k;
                fastcgi_buffers 4 256k;
                fastcgi_busy_buffers_size 256k;
                fastcgi_temp_file_write_size 256k;
                fastcgi_intercept_errors on;
        fastcgi_param SCRIPT_FILENAME /home/site.com/site$fastcgi_script_name;
        }
    listen 443 ssl; # managed by Certbot
    ssl_certificate /etc/letsencrypt/live/site.com/fullchain.pem; # managed by Certbot
    ssl_certificate_key /etc/letsencrypt/live/site.com/privkey.pem; # managed by Certbot
    include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
    ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
}

 , ,

RaptorsWings ()