1 votes

Tous les hôtes virtuels de Nginx redirigent vers un seul hôte virtuel.

J'ai environ 4 noms d'hôtes différents définis dans les fichiers sites-enabled/domain.tld. Chacun de ces fichiers se présente de la manière suivante :

#Redirect everything to the main site.
server {
        server_name *.abc.net;
        listen 80;

        root /var/www/vhosts/abc.net/httpdocs;

        if ($http_host != "acb.net") {
                rewrite ^ http://abc.net$request_uri permanent;
        }

        include /etc/nginx/conf.d/restrictions.conf;

        #Additional rules go here.

        # Only include one of the files below.
        include /etc/nginx/conf.d/wordpress.conf;

        # W3 Total Cache Rules
        include  /var/www/vhosts/abc.net/httpdocs/nginx.conf;
}

Chacun des blocs de serveur dans le dossier Site-enabled ne change que le nom de domaine, ainsi abc.net devient xyz.com et ainsi de suite.

Le problème est que, malgré tous ces fichiers de configuration, tous les serveurs virtuels redirigent vers un seul serveur virtuel. J'ai essayé de redémarrer le serveur nginx, de le recharger et j'ai également redémarré le serveur.

Ces demandes sont envoyées à un php en amont, exécutant PHP-FPM, si cela peut aider, et tous les domaines exécutent wordpress sur eux.

Nous apprécions votre aide. Merci :)

0 votes

Veuillez ajouter le résultat pour curl -I test.abc.net y curl -I test.xyz.net

0 votes

Faire curl -I mpjtime.com me donne : HTTP/1.1 301 Moved Permanently Server: nginx/1.0.10 Date: Fri, 30 Dec 2011 08:36:22 GMT Content-Type: text/html Content-Length: 185 Connection: keep-alive Location: http://mariouana.com/ Et pour un autre domaine sur le même serveur nginx : curl -I geekd.in HTTP/1.1 301 Moved Permanently Server: nginx/1.0.10 Date: Fri, 30 Dec 2011 08:36:31 GMT Content-Type: text/html Content-Length: 185 Connection: keep-alive Location: http://mariouana.com/

2voto

user98648 Points 74

Essayez de changer le bloc server_name dans chaque serveur virtuel.

server {
  ...
  server_name   example.com  *.example.com;
  ...
}

ou, comme recommandé par nginx

server {
    listen       80;
    server_name  *.example.com;
    return       301 http://example.com$request_uri;
}

server {
    listen       80;
    server_name  example.com;
    ...
    your config removing the if part
    ...
}

0voto

Mathias R. Jessen Points 24807

Donc...

        if ($http_host != "acb.net") {
            rewrite ^ http://abc.net$request_uri permanent;
        }

est inclus dans chaque bloc de serveurs virtuels ? Ou bien avez-vous pensé à modifier le nom d'hôte à la bonne valeur ici aussi ?

Si non, cela expliquerait beaucoup de choses :-)

0 votes

J'ai remplacé la valeur, de manière correspondante pour chacun des blocs vhost {} du serveur.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X