【发布时间】:2022-08-21 22:19:50
【问题描述】:
我正在将一些生产中的小型网站移动到 DDEV,其中一些具有多个域,并通过 301 重定向到主 HTTPS 站点。
当我使用 .conf 文件管理应以这种方式重定向到主站点的域时,此配置与“自然” Nginx 配合良好:
server {
listen 80;
server_name .domain1.com
.domain2.com
.domain3.com
;
return 301 https://www.maindomain.com;
}
我尝试创建一个新的 domain.conf 文件并将其添加到 .ddev/nginx_full 目录中以在重新启动过程中加载,但 Nginx 似乎无法识别此类文件。
在主 \"natural\" Nginx 配置文件中,我让这个服务器将所有来自 HTTP 的请求重定向到 HTTPS:
server {
listen 80;
access_log off;
error_log off;
server_name maindomain.com www.maindomain.com;
return 301 https://www.$host$request_uri;
}
我试图在 .ddev/nginx_full/nginx-site.conf 文件中添加这些配置,但服务器开始变得疯狂,有时会进行无限重定向,有时甚至无法识别域。
在 config.yaml 文件中,我有:
additional_fqdns:
- domain1.com
- domain2.com
- domain3.com
- maindomain.com
- www.maindomain.com
use_dns_when_possible: false
我确信这是处理这种情况的“正确方法”,但是查看文档,我没有找到并回答这个问题。在这种情况下,我问这里是否有人对此有所了解。
非常感谢
-
请记住,
.ddev/nginx_full/<something>.conf是 nginx 配置网络容器,这不是主要的终止点(即 ddev-router)。我建议您首先使用虚拟 fqdns 在本地处理此问题,这可能就是您正在做的事情。如果您将 nginx 配置放入 gist.github.com 上的 gist 中,人们会更容易帮助您。