ERR_TOO_MANY_REDIRECTS

0

Cześć. Czy jest ktoś może tutaj, kto zna się na nginx? Chciałbym skonfigurować https na mojej stronie internetowej, dlatego też dzisiaj skonfigurowałem usługę SSL Gateway na ovh, ustawiłem odpowiednie DNS`y, jednak na mojej stronie mam taki błąd:

ERR_TOO_MANY_REDIRECTS

Z tego co wiem mam źle ustawiony config w nginx, jednak nie mam absolutnie pojęcia jak ustawić to wszystko poprawnie.

Nginx.conf:

user www-data;
worker_processes auto;
pid /run/nginx.pid;
include /etc/nginx/modules-enabled/*.conf;

events {
	worker_connections 768;
	# multi_accept on;
}

http {
	##
	# Basic Settings
	##

	sendfile on;
	tcp_nopush on;
	tcp_nodelay on;
	keepalive_timeout 65;
	types_hash_max_size 2048;
	# server_tokens off;

	# server_names_hash_bucket_size 64;
	# server_name_in_redirect off;

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

	##
	# SSL Settings
	##

	ssl_protocols TLSv1 TLSv1.1 TLSv1.2; # Dropping SSLv3, ref: POODLE
	ssl_prefer_server_ciphers on;

	##
	# Logging Settings
	##

	access_log /var/log/nginx/access.log;
	error_log /var/log/nginx/error.log;

	##
	# Gzip Settings
	##

	gzip on;

	 gzip_vary on;
	 gzip_proxied any;
	 gzip_comp_level 6;
	 gzip_buffers 16 8k;
	 gzip_http_version 1.1;
	 gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript;

	##
	# Virtual Host Configs
	##

	include /etc/nginx/conf.d/*.conf;
	include /etc/nginx/sites-enabled/*;
}


#mail {
#	# See sample authentication script at:
#	# http://wiki.nginx.org/ImapAuthenticateWithApachePhpScript
# 
#	# auth_http localhost/auth.php;
#	# pop3_capabilities "TOP" "USER";
#	# imap_capabilities "IMAP4rev1" "UIDPLUS";
# 
#	server {
#		listen     localhost:110;
#		protocol   pop3;
#		proxy      on;
#	}
# 
#	server {
#		listen     localhost:143;
#		protocol   imap;
#		proxy      on;
#	}
#}

Default:

server {
    listen [::]:80;
    return 301 https://$host$request_uri;
}

server {

    listen [::]:443;
    server_name domukasi.pl www.domukasi.pl;

    location / {

      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;

      # Fix the “It appears that your reverse proxy set up is broken" error.
      proxy_pass          http://127.0.0.1:3000;
      proxy_read_timeout  90;

      proxy_redirect      http://127.0.0.1:3000 https://domukasi.pl;
    }
  }
0

Przeklejanie losowych configów z neta i startowanie na nich losowych usług to jest zły pomysł.
Przez to nie widzisz, że masz stronę na https, a po wejściu na nią, kierujesz znowu na nią i potem się dziwisz, co tu jest źle...

0
TurkucPodjadek napisał(a):

Przeklejanie losowych configów z neta i startowanie na nich losowych usług to jest zły pomysł.
Przez to nie widzisz, że masz stronę na https, a po wejściu na nią, kierujesz znowu na nią i potem się dziwisz, co tu jest źle...

Masz rację, to jest złe, ale nie wiem jak powinienem to zrobić, wiesz może jak powinien wyglądać ten config?

0
M7six napisał(a):
TurkucPodjadek napisał(a):

Przeklejanie losowych configów z neta i startowanie na nich losowych usług to jest zły pomysł.
Przez to nie widzisz, że masz stronę na https, a po wejściu na nią, kierujesz znowu na nią i potem się dziwisz, co tu jest źle...

Masz rację, to jest złe, ale nie wiem jak powinienem to zrobić, wiesz może jak powinien wyglądać ten config?

Pierwsze pytanie, które muszę Ci zadać: co Ty dokładnie chcesz tu osiągnąć?
Stronę masz na porcie 443 czy na 3000? Jeśli masz na 3000, to co Ci broni wstawić na 443, masz jakiś większy cel w tym, by to było tak "schowane", a tym samym redirect był potrzebny?

0

Napisz co masz w tych katalogach
/etc/nginx/modules-enabled/.conf;
/etc/nginx/conf.d/
.conf;
/etc/nginx/sites-enabled/*;
Może strona ma zaszyty http i daje redirecta...

0
TurkucPodjadek napisał(a):
M7six napisał(a):
TurkucPodjadek napisał(a):

Przeklejanie losowych configów z neta i startowanie na nich losowych usług to jest zły pomysł.
Przez to nie widzisz, że masz stronę na https, a po wejściu na nią, kierujesz znowu na nią i potem się dziwisz, co tu jest źle...

Masz rację, to jest złe, ale nie wiem jak powinienem to zrobić, wiesz może jak powinien wyglądać ten config?

Pierwsze pytanie, które muszę Ci zadać: co Ty dokładnie chcesz tu osiągnąć?
Stronę masz na porcie 443 czy na 3000? Jeśli masz na 3000, to co Ci broni wstawić na 443, masz jakiś większy cel w tym, by to było tak "schowane", a tym samym redirect był potrzebny?

Ogólnie to strona chodzi na porcie 3000(aplikacja react), dlatego w kodzie jest tak ustawione. A ja ogólnie chciałbym osiągnąć to aby strona strona działała normalnie.

0
hzmzp napisał(a):

Napisz co masz w tych katalogach
/etc/nginx/modules-enabled/.conf;
/etc/nginx/conf.d/
.conf;
/etc/nginx/sites-enabled/*;
Może strona ma zaszyty http i daje redirecta...

A więc tak w folderze(/etc/nginx/modules-enabled) są takie pliki, a w nich:
50-mod-http-geoip.conf:

load_module modules/ngx_http_geoip_module.so;

50-mod-http-image-filter.conf

load_module modules/ngx_http_image_filter_module.so;

50-mod-http-xslt-filter.conf

load_module modules/ngx_http_xslt_filter_module.so;

50-mod-mail.conf:

load_module modules/ngx_mail_module.so;

50-mod-stream.conf:

load_module modules/ngx_stream_module.so;

Folder /etc/nginx/conf.d/ jest pusty
W folderze /etc/nginx/sites-enabled/, mam plik default, którego zawartość napisałem wyżej

Podrzucę jeszcze może, wyniki dwóch poleceń, w jakiś sposób może przyczyni się to do rozwiązania problemu
sudo lsof -i :80

COMMAND   PID     USER   FD   TYPE   DEVICE SIZE/OFF NODE NAME
nginx    6346     root    6u  IPv6 15423161      0t0  TCP *:http (LISTEN)
nginx    6348 www-data    6u  IPv6 15423161      0t0  TCP *:http (LISTEN)
nginx   12503     root    6u  IPv4   468507      0t0  TCP *:http (LISTEN)
nginx   12548 www-data    6u  IPv4   468507      0t0  TCP *:http (LISTEN)

sudo lsof -i :444

COMMAND   PID     USER   FD   TYPE   DEVICE SIZE/OFF NODE NAME
nginx    6346     root    7u  IPv6 15423162      0t0  TCP *:https (LISTEN)
nginx    6348 www-data    7u  IPv6 15423162      0t0  TCP *:https (LISTEN)
nginx   12503     root    7u  IPv4   468508      0t0  TCP *:https (LISTEN)
nginx   12548 www-data    7u  IPv4   468508      0t0  TCP *:https (LISTEN)
0

To w ogolę działało po http?

0
hzmzp napisał(a):

To w ogolę działało po http?

Ależ oczywiście, tylko w przypadku http, domyślny skrypt default, wyglądał tak:

server {
        listen 80;

        location / {


                proxy_pass http://127.0.0.1:3000;
                proxy_http_version 1.1;
                proxy_set_header Upgrade $http_upgrade;
                proxy_set_header Connection "upgrade";
        }

}

Później doszedł certbot...

server {
	server_name domukasi.pl www.domukasi.pl;
        location / {

		
                proxy_pass http://127.0.0.1:3000;
                proxy_http_version 1.1;
                proxy_set_header Upgrade $http_upgrade;
                proxy_set_header Connection "upgrade";
        }



    listen 443 ssl; # managed by Certbot
    ssl_certificate /etc/letsencrypt/live/domukasi.pl/fullchain.pem; # managed by Certbot
    ssl_certificate_key /etc/letsencrypt/live/domukasi.pl/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 {
    if ($host = www.domukasi.pl) {
        return 301 https://$host$request_uri;
    } # managed by Certbot


    if ($host = domukasi.pl) {
        return 301 https://$host$request_uri;
    } # managed by Certbot


	server_name domukasi.pl www.domukasi.pl;
    listen 80;
    return 404; # managed by Certbot

}

1 użytkowników online, w tym zalogowanych: 0, gości: 1