nginx 反向代理子域名问题

nginx 反向代理子域名问题

我使用 nginx 作为多个服务的反向代理。我正在运行(phpmyadmin、MySQL、graphql api、nextjs-apps 等)。我将我的域名称为example-domain.de

我以前曾经mysql.example-domain.de访问过 phpmyadmin,现在我想将其更改为,phpmyadmin.example-domain.de因为我想将其mysql.example-domain.de用作 MySQL 服务器的 TCP 代理。

适当的 nginx 配置:

server {
        server_name mysql.example-domain.de www.example-domain.de;

        root /usr/share/phpmyadmin;
        index index.php index.html index.htm index.nginx-debian.html;

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

        location ~ ^/(doc|sql|setup)/ {
                deny all;
        }

        location ~ \.php$ {
                fastcgi_pass unix:run/php/php7.4-fpm.sock;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

                include fastcgi_params;
                include snippets/fastcgi-php.conf;
        }

        location ~ /\.ht {
                deny all;
        }

        listen 443 ssl; # managed by Certbot
        ssl_certificate /etc/letsencrypt/live/example-domain-0001/fullchain.pem; # managed by Certbot
        ssl_certificate_key /etc/letsencrypt/live/example-domain-0001/privkey.pem; # managed by Certbot
        include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
        ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
}

此配置适用于在 上提供 phpmyadmin 服务mysql.example-domain.de,但如果我添加或更改server_name为:
server_name mysql.example-domain.de www.mysql.example-domain.de phpmyadmin.example-domain.de www.phpmyadmin.example-doman.de

server_name phpmyadmin.example-domain.de www.phpmyadmin.example-doman.de

我无法访问phpmyadmin.example-domain.de

是的,我使用 certbot 更新了 let's encrypt 证书。

我究竟做错了什么?

答案1

现在它开始工作了。我不知道为什么或者如何,但它开始工作了,我要把它留在那里。

这几天都没改什么配置文件,今天一试,竟然成功了。

子域名是在大约三周前创建的,因此这不是问题所在。

相关内容