2017-11-27 1 views
1

Ich habe zwei Nginx-Dateien in meinen Websites-verfügbar. Einer ist für eine https-Domäne und ein anderer für und eine http-Domäne. Ich habe das Routing für die https-Domäne, um domain1.com zu https://www.domain1.com zu routen, aber stattdessen leitet es zu der http-Domäne, die ich eingerichtet habe, http://www.domain2.com. Kann mir jemand helfen? Ich habe versucht, Google das Problem, aber nichts hat bisher geholfen.Nginx Routing-Problem - http-Server und https-Server

domain1 Setup

server{ 
    server_name http://domain1.com 
    return 301 https://www.domain1.com$request_uri; 
} 
server { 
    listen 443 ssl; 
    server_name www.domain1.com; 

    ssl_certificate  /home/node/www.domain1.com.crt; 
    ssl_certificate_key /home/node/www.domain1.com.key; 

    ssl_protocols  SSLv3 TLSv1 TLSv1.1 TLSv1.2; 
    ssl_ciphers   HIGH:!aNULL:!MD5; 

    location/{ 
     proxy_redirect off; 
     access_log /var/log/nginx/mainacc.log; 
     proxy_pass http://127.0.0.1:3000; 
     proxy_set_header X-Real-IP $remote_addr; 
     proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
     proxy_set_header Host $http_host; 
     proxy_set_header X-NginX-Proxy true; 
     proxy_connect_timeout  600; 
     proxy_send_timeout   600; 
     proxy_read_timeout   600; 
     send_timeout    600; 
    } 
} 

domain2 Setup

server { 
    listen 80; 
    listen [::]:80; 

    server_name domain2.com www.domain2.com; 

    root /var/www/html; 
    index index.php index.html index.htm; 

    location/{ 
     try_files $uri $uri/ /index.php?q=$uri&$args; 
    } 

    error_page 404 /404.html; 

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

    location ~ \.php$ { 
     try_files $uri =404; 
     fastcgi_split_path_info ^(.+\.php)(/.+)$; 
     fastcgi_pass unix:/var/run/php5-fpm.sock; 
       fastcgi_index index.php; 
       include fastcgi_params; 
    } 
} 

Antwort

0

Sie fehlen der Block 80 Richtlinie oben Ihrer domain1 Setup hören

dies sollte funktionieren

server { 
    listen 80 ; 
    listen [::]:80 ; 
    server_name domain1.com, www.domain1.com; 
    # return 301 https://www.domain1.com$request_uri; 
    rewrite ^/(.*) https://www.domain1.com/$1 permanent; 
} 

Hat das den Trick gemacht?