Folosesc ruby on rails într-un container docker care rulează site-ul meu https://redrebelgames.com pe portul 3000. Încerc să configurez NGINX să redirecționeze traficul http:// către https:// și să redirecționeze portul 80 către portul 3000. Funcționează dacă mergi direct la adresa IP: 143.244.156.208. Chiar redirecționează traficul către portul 80. Cu toate acestea, unele dintre fotografii nu se încarcă așa cum se vede mai jos:
Și domeniul în sine nu funcționează. Ce este în neregulă cu configurația mea în /etc/nginx/sites-available/default? Puteți vedea interiorul fișierului mai jos:
##
# Ar trebui să vă uitați la următoarele adrese URL pentru a înțelege o înțelegere solidă
# de fișiere de configurare Nginx pentru a elibera pe deplin puterea lui Nginx.
# https://www.nginx.com/resources/wiki/start/
# https://www.nginx.com/resources/wiki/start/topics/tutorials/config_pitfalls/
# https://wiki.debian.org/Nginx/DirectoryStructure
#
# În majoritatea cazurilor, administratorii vor elimina acest fișier de pe site-uri activate/ și
# lăsați-l ca referință în interiorul site-urilor-disponibil acolo unde va continua să fie
# actualizat de echipa de ambalare nginx.
#
# Acest fișier va încărca automat fișierele de configurare furnizate de alții
# aplicații, cum ar fi Drupal sau Wordpress. Aceste cereri se vor face
# disponibil sub o cale cu acel nume de pachet, cum ar fi /drupal8.
#
# Consultați /usr/share/doc/nginx-doc/examples/ pentru exemple mai detaliate.
##
# Configurația implicită a serverului
#
Server {
asculta 80 default_server;
asculta [::]:80 default_server;
# Configurare SSL
#
# asculta 443 ssl default_server;
# asculta [::]:443 ssl default_server;
#
# Notă: ar trebui să dezactivați gzip pentru traficul SSL.
# Vezi: https://bugs.debian.org/773332
#
# Citiți informații despre ssl_ciphers pentru a asigura o configurație sigură.
# Vezi: https://bugs.debian.org/765782
#
# Certificate autosemnate generate de pachetul ssl-cert
# Nu le folosiți pe un server de producție!
#
# include snippets/snakeoil.conf;
# root /var/www/html;
# Adăugați index.php la listă dacă utilizați PHP
# index index.html index.htm index.nginx-debian.html;
numele serverului _;
Locație / {
proxy_pass http://localhost:3000;
# proxy_http_version 1.1;
# proxy_set_header Actualizare $http_upgrade;
# proxy_set_header Conexiune „upgrade”;
# proxy_set_header Gazdă $gazdă;
# proxy_cache_bypass $http_upgrade;
# Mai întâi încercați să serviți cererea ca fișier, apoi
# ca director, apoi reveniți la afișarea unui 404.
#try_files $uri $uri/ =403;
}
# treceți scripturile PHP către serverul FastCGI
#
#locație ~ \.php$ {
# include snippets/fastcgi-php.conf;
#
# # Cu php-fpm (sau alte socket-uri Unix):
# fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
# # Cu php-cgi (sau alte socket-uri tcp):
# fastcgi_pass 127.0.0.1:9000;
#}
# interzice accesul la fișierele .htaccess, dacă rădăcina documentului Apache
# de acord cu cel al lui nginx
#
#locație ~ /\.ht {
# nega totul;
#}
}
# Configurarea gazdei virtuale pentru example.com
#
# Puteți muta asta într-un fișier diferit sub site-available/ și puteți trimite simbolul
# la site-uri activate/ pentru a-l activa.
#
#Server {
# asculta 80;
# asculta [::]:80;
#
# server_name example.com;
#
# root /var/www/example.com;
# index index.html;
#
# Locație / {
# try_files $uri $uri/ =404;
#}
#}
Server {
# Configurare SSL
#
# asculta 443 ssl default_server;
# asculta [::]:443 ssl default_server;
#
# Notă: ar trebui să dezactivați gzip pentru traficul SSL.
# Vezi: https://bugs.debian.org/773332
#
# Citiți informații despre ssl_ciphers pentru a asigura o configurație sigură.
# Vezi: https://bugs.debian.org/765782
#
# Certificate autosemnate generate de pachetul ssl-cert
# Nu le folosiți pe un server de producție!
#
# include snippets/snakeoil.conf;
# root /var/www/html;
# Adăugați index.php la listă dacă utilizați PHP
# index index.html index.htm index.nginx-debian.html;
nume_server redrebelgames.com; # gestionat de Certbot
Locație / {
proxy_pass http://localhost:3000;
# proxy_http_version 1.1;
# proxy_set_header Actualizare $http_upgrade;
# proxy_set_header Conexiune „upgrade”;
# proxy_set_header Gazdă $gazdă;
# proxy_cache_bypass $http_upgrade;
# Mai întâi încercați să serviți cererea ca fișier, apoi
# ca director, apoi reveniți la afișarea unui 404.
#try_files $uri $uri/ =404;
}
# treceți scripturile PHP către serverul FastCGI
#
#locație ~ \.php$ {
# include snippets/fastcgi-php.conf;
#
# # Cu php-fpm (sau alte socket-uri Unix):
# fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
# # Cu php-cgi (sau alte socket-uri tcp):
# fastcgi_pass 127.0.0.1:9000;
#}
# interzice accesul la fișierele .htaccess, dacă rădăcina documentului Apache
# de acord cu cel al lui nginx
#
#locație ~ /\.ht {
# nega totul;
#}
asculta [::]:443 ssl ipv6only=on; # gestionat de Certbot
asculta 443 ssl; # gestionat de Certbot
ssl_certificate /etc/letsencrypt/live/redrebelgames.com/fullchain.pem; # gestionat de Certbot
ssl_certificate_key /etc/letsencrypt/live/redrebelgames.com/privkey.pem; # gestionat de Certbot
includ /etc/letsencrypt/options-ssl-nginx.conf; # gestionat de Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # gestionat de Certbot
}
Server {
dacă ($gazdă = redrebelgames.com) {
returnează 301 https://$host$request_uri;
} # gestionat de Certbot
asculta 80 ;
asculta [::]:80 ;
nume_server redrebelgames.com;
întoarce 404; # gestionat de Certbot
}