Как установить прокси Nginx с Puma, чтобы я мог загружать файлы? - PullRequest
0 голосов
/ 03 октября 2019

Я хочу реализовать сервер с nginx в качестве обратного прокси-сервера и puma для доставки веб-приложения ruby-on-rails.

Когда я загружаю файл изображения в приложение, я получаю ошибку 500с сервера и перенаправления на файл get по тому же адресу.

Приложение работает нормально только через puma, но нам нужно будет работать через прокси.

Я пыталсяпосмотрите в документации настройки прокси, но я еще не на этом уровне для отладки текущей функциональности обратного прокси.

Параметр nginx.conf для этого приложения выглядит так: `

server {
        listen 443 ssl http2 ;
        #listen [::]:443 ssl http2;
        server_name     www.benefito-mobile.ro;
        root /var/www/benefito/current/public;
        # certs sent to the client in SERVER HELLO are concatenated in ssl_certificate
        ssl_certificate /etc/nginx/ssl/benefito_mobile_ro.crt;
        ssl_certificate_key /etc/nginx/ssl/benefito-mobile.ro.key;
        ssl_session_timeout 1d;
        ssl_session_cache shared:MozSSL:10m;  # about 40000 sessions
        ssl_session_tickets off;
        ssl_dhparam /etc/nginx/ssl/dhparam.pem;
        # intermediate configuration
        ssl_protocols TLSv1.2;
        ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:.....;
        ssl_prefer_server_ciphers on;

        # HSTS (ngx_http_headers_module is required) (63072000 seconds)
        add_header Strict-Transport-Security "max-age=63072000" always;

location / {
                proxy_pass http://127.0.0.1:4001;
                proxy_http_version 1.1;
                proxy_set_header Host $http_host;
                proxy_set_header Upgrade $http_upgrade;
                proxy_set_header Connection $connection_upgrade;
                proxy_buffering off;
                proxy_set_header Content-Length 0;
                proxy_set_header X-Forwarded-Proto $scheme;
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                proxy_set_header Host $http_host;
                proxy_redirect on;
        }

}

`

файл nginx error.log показывает это:

2019/10/03 07:06:50 [error] 24796#0: *76 connect() failed (111: Connection refused) while connecting to upstream, client: 89.47.229.170, server: www.benefito-mobile.ro, request: "GET /assets/jquery_ujs.self-784a997f6726036b1993eb2217c9cb558e1cbb801c6da88105588c56f13b466a.js?body=1 HTTP/2.0", upstream: "http://[::1]:4001/assets/jquery_ujs.self-784a997f6726036b1993eb2217c9cb558e1cbb801c6da88105588c56f13b466a.js?body=1", host: "www.benefito-mobile.ro", referrer: "https://www.benefito-mobile.ro/"

2019/10/03 07:06:51 [crit] 24796#0: *76 open() "/var/lib/nginx/tmp/proxy/4/00/0000000004" failed (13: Permission denied) while reading upstream, client: 89.47.229.170, server: www.benefito-mobile.ro, request: "GET /assets/footer_bkg.jpg HTTP/2.0", upstream: "http://127.0.0.1:4001/assets/footer_bkg.jpg", host: "www.benefito-mobile.ro", referrer: "https://www.benefito-mobile.ro/assets/application.self-8f944bb40af5bb50e82b3f6ed95b695a8900f1a4ae30ca0227ceb83a2665ec29.css?body=1"

2019/10/03 07:06:58 [crit] 24796#0: *76 open() "/var/lib/nginx/tmp/client_body/0000000005" failed (13: Permission denied), client: 89.47.229.170, server: www.benefito-mobile.ro, request: "POST /home/update_sim_privacy HTTP/2.0", host: "www.benefito-mobile.ro", referrer: "https://www.benefito-mobile.ro/"

Я ожидаю загрузить файл и получить нормальный ответ об успешном выполнении 200, так как он работает непосредственно с Puma ине через nginx.

...