nginx实现同一台服务器配置两个网站

我在一台虚拟机上(同一个IP)搭建了LNMP环境,然后部署两个网站(两个域名),分别时www.iwwenbo.com,www.weiyanzixun.com,域名解析正常,同时开启了https证书。现在的问题是我访问www.iwwenbo.com这个域名时,经常会跳转到www.weiyanzixun.com这个域名上,请问我的配置问题出在哪里?
环境:

nginx version: nginx/1.12.1

两个域名的nginx配置文件分别如下:

配置1:.iwwenbo.https.conf

server{
    listen 80;
    server_name iwwenbo.com www.iwwenbo.com;
    add_header Strict-Transport-Security max-age=15768000;
    return 301 https://$server_name$request_uri;
}

server {
   listen 443 ssl http2;
   server_name iwwenbo.com www.iwwenbo.com;
   index  index.php index.html index.htm;
   root   /usr/share/nginx/html;
   add_header X-Frame-Options DENY;
   add_header X-Content-Type-Options nosniff;
 
   ssl_certificate /etc/letsencrypt/live/iwwenbo.com/fullchain.pem;
   ssl_certificate_key /etc/letsencrypt/live/iwwenbo.com/privkey.pem;
   ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
   ssl_ciphers EECDH+CHACHA20:EECDH+CHACHA20-draft:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5;
   ssl_prefer_server_ciphers on;
   ssl_session_cache shared:SSL:10m;
   ssl_session_timeout 60m;

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

    location ~ \.php$ {
        fastcgi_pass   127.0.0.1:9000;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  $document_root/$fastcgi_script_name;
        include        fastcgi_params;
    }

}

配置2:weiyan.https.conf

server{
    listen 80;
    server_name weiyanzixun.com www.weiyanzixun.com;
    #告诉浏览器有效期内只准用 https 访问
    add_header Strict-Transport-Security max-age=15768000;
    #永久重定向到 https 站点
    return 301 https://$server_name$request_uri;
}

server {
   listen 443 ssl http2;
   server_name weiyanzixun.com www.weiyanzixun.com;
   index  index.php index.html index.htm;
   root   /usr/share/nginx/weiyanzixun;
   add_header X-Frame-Options DENY;
   add_header X-Content-Type-Options nosniff;
 
   ssl_certificate /etc/letsencrypt/live/weiyanzixun.com/fullchain.pem;
   ssl_certificate_key /etc/letsencrypt/live/weiyanzixun.com/privkey.pem;
   ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
   ssl_ciphers EECDH+CHACHA20:EECDH+CHACHA20-draft:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5;
   ssl_prefer_server_ciphers on;
   ssl_session_cache shared:SSL:10m;
   ssl_session_timeout 60m;


    location / {
        try_files $uri $uri/ /index.php?$args;  #修改内容
    }

    # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
    #
    #修改此处内容支持php
    location ~ \.php$ {
        fastcgi_pass   127.0.0.1:9000;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  $document_root/$fastcgi_script_name;
        include        fastcgi_params;
    }
}

请哪位大神告诉我问题出在哪里,还有就是这个配置有那些地方可以进行优化的?

LEATH
浏览 2943回答 5
5回答

千巷猫影

你用 /你的nginx安装路径/bin/nginx -t 检查一下你的配置,报错吗?

动漫人物

两个都是fastcgi_pass 127.0.0.1:9000;会有问题么?

慕侠2389804

一个443就OK了
打开App,查看更多内容
随时随地看视频慕课网APP