nginx反向代理多域

nginx反向代理多域,nginx,reverse-proxy,Nginx,Reverse Proxy,我的nginx配置有一些问题。顺便说一下,我是nginx的新手 我想在一台服务器上托管多个网站。已安装Ubuntu 16.04 例如: www.myDomain.com-应指向正常的webroot eq:/var/www/html wiki.myDomain.com-应该在localhost:8090上反向代理到我的汇流应用程序 blog.myDomain.com-应指向另一个webroot eq:/var/www/blog 我试图配置基本url=www.myDomain.com和wiki反向代

我的nginx配置有一些问题。顺便说一下,我是nginx的新手

我想在一台服务器上托管多个网站。已安装Ubuntu 16.04

例如: www.myDomain.com-应指向正常的webroot eq:/var/www/html wiki.myDomain.com-应该在localhost:8090上反向代理到我的汇流应用程序 blog.myDomain.com-应指向另一个webroot eq:/var/www/blog

我试图配置基本url=www.myDomain.com和wiki反向代理

我的文件如下所示:

默认值:

server {
        listen 80 default_server;
#       listen [::]:80 default_server;
        server_name myDomain.com www.myDomain.com;
        return 301 https://$server_name$request_uri;
}


server {

        listen 443 ssl http2 default_server;
        listen [::]:443 ssl http2 default_server;

        server_name myDomain.com www.myDomain.com

        include snippets/ssl-www.myDomain.com.conf;
        include snippets/ssl-params.conf;



        root /var/www/html;

        index index.php index.html index.htm index.nginx-debian.html;

        server_name myDomain.com www.myDomain.com;



        location / {
allow all;
        try_files $uri $uri/ =404;
        }

        location ~ \.php$ {
                include snippets/fastcgi-php.conf;
                fastcgi_pass unix:/run/php/php7.0-fpm.sock;
        }

        location ~ /\.ht {
                deny all;
        }

        location /phpmyadmin {

          root /usr/share/;
          index index.php index.html index.htm;

          location ~ ^/phpmyadmin/(.+\.php)$ {
            try_files $uri =404;
            fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;
            include fastcgi_params;
            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

          }

          location ~* ^/phpmyadmin/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ {
            root /usr/share/;
          }

        }

}
server {
        listen 80;
#       listen [::]:80;
        server_name wiki.myDomain.com;
        return 301 https://$server_name$request_uri;
}

server {


        listen wiki.myDomain.com:443 ssl;
#        listen [::]:443;
        add_header Strict-Transport-Security "max-age=31536000";


        include snippets/ssl-wiki.myDomain.com.conf;
        include snippets/ssl-params.conf;

#        root /var/www/wiki.myDomain.com;

        location /.well-known {
                root /var/www/wiki.myDomain.com/;
#               default_type text/plain;
        }


        location / {
                client_max_body_size 100m;
                proxy_set_header X-Forwarded-Host $host;
                proxy_set_header X-Forwarded-Server $host;
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                proxy_pass http://localhost:8090;
        }

        location /synchrony {
                proxy_set_header X-Forwarded-Host $host;
                proxy_set_header X-Forwarded-Server $host;
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                proxy_pass http://localhost:8091/synchrony;
                proxy_http_version 1.1;
                proxy_set_header Upgrade $http_upgrade;
                proxy_set_header Connection "Upgrade";
        }

}
my wiki.myDomain.com,不带反向代理:

server {
        listen 80 default_server;
#       listen [::]:80 default_server;
        server_name myDomain.com www.myDomain.com;
        return 301 https://$server_name$request_uri;
}


server {

        listen 443 ssl http2 default_server;
        listen [::]:443 ssl http2 default_server;

        server_name myDomain.com www.myDomain.com

        include snippets/ssl-www.myDomain.com.conf;
        include snippets/ssl-params.conf;



        root /var/www/html;

        index index.php index.html index.htm index.nginx-debian.html;

        server_name myDomain.com www.myDomain.com;



        location / {
allow all;
        try_files $uri $uri/ =404;
        }

        location ~ \.php$ {
                include snippets/fastcgi-php.conf;
                fastcgi_pass unix:/run/php/php7.0-fpm.sock;
        }

        location ~ /\.ht {
                deny all;
        }

        location /phpmyadmin {

          root /usr/share/;
          index index.php index.html index.htm;

          location ~ ^/phpmyadmin/(.+\.php)$ {
            try_files $uri =404;
            fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;
            include fastcgi_params;
            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

          }

          location ~* ^/phpmyadmin/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ {
            root /usr/share/;
          }

        }

}
server {
        listen 80;
#       listen [::]:80;
        server_name wiki.myDomain.com;
        return 301 https://$server_name$request_uri;
}

server {


        listen wiki.myDomain.com:443 ssl;
#        listen [::]:443;
        add_header Strict-Transport-Security "max-age=31536000";


        include snippets/ssl-wiki.myDomain.com.conf;
        include snippets/ssl-params.conf;

#        root /var/www/wiki.myDomain.com;

        location /.well-known {
                root /var/www/wiki.myDomain.com/;
#               default_type text/plain;
        }


        location / {
                client_max_body_size 100m;
                proxy_set_header X-Forwarded-Host $host;
                proxy_set_header X-Forwarded-Server $host;
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                proxy_pass http://localhost:8090;
        }

        location /synchrony {
                proxy_set_header X-Forwarded-Host $host;
                proxy_set_header X-Forwarded-Server $host;
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                proxy_pass http://localhost:8091/synchrony;
                proxy_http_version 1.1;
                proxy_set_header Upgrade $http_upgrade;
                proxy_set_header Connection "Upgrade";
        }

}
我的问题是: Wiki.myDomain.com运行良好! 由于某种原因,www.eida.at总是自动转发到

有了www.myDomain.com,我希望有一个单独的网站-不转发到wiki。似乎任何时候都会使用反向代理部分——不管我选择哪个url


谢谢你的帮助

使用
nginx-T
测试配置并查看
nginx
正在使用什么。听起来好像只使用了第二个配置文件。另外,在一个
server
块中有两个
server\u name
指令,而在另一个块中没有指令。nginx正在使用/etc/nginx/nginx.conf-此文件中包括/sites enabled目录中的所有文件。在这个文件中,我的两个配置文件都包括在内。所以应该没问题。我相应地更正了服务器名称命令-相同的结果。当我在浏览器中输入www.myDomain.com时,它会将我一直转发到wiki.myDomain.com。我现在测试了一个新的安装了Ubuntu的nginx installaltion。首先,我为www.myDomain.com创建了默认配置。这样做没有任何问题。然后我用不同的web根配置了一个简单的虚拟域。结果是,我可以通过test.myDomain、com访问虚拟域,但每当我尝试访问www.myDomain.com时,它都会将我重定向到test.myDomain.com。我的问题是否可能在其他地方,而不是在nginx配置中?也许是DNS记录?我创建了一个记录到公共IP的子域。或者可能是服务器的hosts文件?出于某种原因,nginx似乎无法区分子域。。。