• Seedbox
  • Redirection de domain.tld vers www.domain.tld

Bonjour, j'ai cherché ce sujet sur le forum mais je n'ai trouvé. Je souhaiterairai faire une redirection automatique de domain.tld à www.domain.tld , est ce possible à l'aide de nginx ? Si oui, comment svp? Merci

Ps :Je suis en https avec un certificat Let's Encrypt
Ton tuto m'éviter de poser la question mais je ne crois pas que ça m'aide ?!

Je cherche juste à placer un www. Par défaut devant mon URL.

Faudrait-il que je change le server_name ?
ba oui, dans le tuto c'est une redirection https mais faut pas hésiter à adapter selon ses besoins. Mais surtout de faire des tests.
Autant pour moi, merci
Juste une question le mort 301, il ne sert qu'à la redirection (convention?) ou c'est juste un port au hasard ?
OK, et peut on mettre 2 server name ? (
server_name x.fr www.x.fr
) par ex.
Taguy wrote:OK, et peut on mettre 2 server name ? (
server_name x.fr www.x.fr
) par ex.
Bien sur
Merci beaucoup pour toutes vos réponses !
Faut-il aussi changer le hostname dans le panneau de config ? Ca a un rapport ?

EDIT: Je n'arrive pas a rediriger les requettes https://x.fr vers https://www.x.fr

J'ai essayé de remettre un
listen 443 ssl;
mais la redirection n'as pas aboutie
Quand je tape x.fr dans la barre d'adresse ca me redirige vers https://x.fr et non https://www.x.fr auriez vous une solution svp ?

PS : faut il inclure un http2 à la fin de
listen 443 ssl;
?
Merci
L'idée peut paraître saugrenue mais y'a un moment où tu vas poster ce que tu as fais comme conf ou c'est pas au programme du tout ?
Si tu veux que quelqu’un s’intéresse à ton soucis, ce serait pourtant une bonne idée je pense...
Ex.
Excuse moi, c'est vrai, j'aurais du y penser J'ajoutes que je me suis mal exprimé : les requêtes sont redirigées mais le site existe en doublon entre https://domain.tld et https://www.domain.tld

Voici mon rutorrent.conf, "seed" est mon user rutorrent
server {
    listen 80;
    server_name domain.tld www.domain.tld;

    return 301 https://www.domain.tld$request_uri;
}

server {
	listen 443 default_server ssl http2;
	server_name www.domain.tld;

	index index.html index.php;
	charset utf-8;
	client_max_body_size 10M;

	ssl_certificate /etc/letsencrypt/live/www.domain.tld/fullchain.pem;
        ssl_certificate_key /etc/letsencrypt/live/www.domain.tld/privkey.pem;
	include /etc/nginx/conf.d/ciphers.conf;

	access_log /var/log/nginx/rutorrent-access.log combined;
	error_log /var/log/nginx/rutorrent-error.log error;

	error_page 500 502 503 504 /50x.html;
	location = /50x.html { root /usr/share/nginx/html; }

	auth_basic "seedbox";
	auth_basic_user_file "/etc/nginx/passwd/rutorrent_passwd";

	location = /favicon.ico {
		access_log off;
		log_not_found off;
	}

	## début config accueil serveur ##

	location ^~ / {
	    root /var/www/base;
	    include /etc/nginx/conf.d/php.conf;
	    include /etc/nginx/conf.d/cache.conf;
	    satisfy any;
	    allow all;
	}

	## fin config accueil serveur ##

	## début config proxy ##

	location ^~ /proxy {
	    root /var/www;
	    include /etc/nginx/conf.d/php.conf;
	    include /etc/nginx/conf.d/cache.conf;
	}

	## fin config proxy ##

	## début config rutorrent ##

	location ^~ /rutorrent {
	    root /var/www;
	    include /etc/nginx/conf.d/php.conf;
	    include /etc/nginx/conf.d/cache.conf;

	    location ~ /\.svn {
		    deny all;
	    }

	    location ~ /\.ht {
		    deny all;
	    }
	}

	location ^~ /rutorrent/conf/ {
		deny all;
	}

	location ^~ /rutorrent/share/ {
		deny all;
	}

	## fin config rutorrent ##

	## début config munin ##

	location ^~ /graph {
	    root /var/www;
	    include /etc/nginx/conf.d/php.conf;
	    include /etc/nginx/conf.d/cache.conf;
	}

	location ^~ /graph/img {
	    root /var/www;
	    include /etc/nginx/conf.d/php.conf;
	    include /etc/nginx/conf.d/cache.conf;
	    error_log /dev/null crit;
	}

	location ^~ /monitoring {
	    root /var/www;
	    include /etc/nginx/conf.d/php.conf;
	    include /etc/nginx/conf.d/cache.conf;
	}

	## fin config munin ##

	## début config seedbox-manager ##

	location ^~ /seedbox-manager {
	alias /var/www/seedbox-manager/public;
	    include /etc/nginx/conf.d/php-manager.conf;
	    include /etc/nginx/conf.d/cache.conf;
	}

        ## fin config seedbox-manager ##

        ## config utilisateurs  ##

        location /SEED {
            include scgi_params;
            scgi_pass 127.0.0.1:5001; #ou socket : unix:/home/username/.session/username.socket
            auth_basic "seedbox";
            auth_basic_user_file "/etc/nginx/passwd/rutorrent_passwd_seed";
        }
}
J'ai laissé le http2 car il était déja dans mon rutorrent.conf de base.

Merci d'avnce
Pourtant ça me parait pas mal ce que t'as fait, il ne devrait pas réponde sur domain.tld en 443 (je connais pas bien nginx je peux dire des conneries !)

Tu peux peut-être tester avec ça pour voir, une deuxième redirection juste pour le 443:
server {
    listen 80;
    server_name domain.tld www.domain.tld;

    return 301 https://www.domain.tld$request_uri;
}

server {
    listen 443 ssl http2;
    server_name domain.tld;
    ssl_certificate ...chemin_certif
    ssl_certificate_key ....chemin_certif
    return 301 https://www.domain.tld$request_uri;
}

server {
	listen 443 default_server ssl http2;
	server_name www.domain.tld;
...
Pas sur que ça marche mais bon...
Ex.
edit; j'ai ajouté les clés sur la redir, sinon il va pas aimer
Perso pour le return 301 je fais cela
    return 301 https://$server_name$request_uri;
}
voici le début du fichier conf. Il ne te restera qu'a modifier domain.tld par ton nom de domaine.
server {
   listen 80;
    server_name domain.tld www.domain.tld;
    return 301 https://$server_name$request_uri;
}

server {
    listen 443 ssl http2;

@Ex_rat merci, ca a marché, merci aussi pour ton script

@billred Ca marche pour la premiere redirection mais je ne sais pas pourquoi : quand il y 2 server_name, il prend le www. par défaut ?
Répondre…