在 jwilder/nginx-proxy Docker 容器中重写 URL
Rewrite URL in jwilder/nginx-proxy Docker container
我正在对一些网站进行容器化。我希望能够迁移一些重写规则以自动从请求中的域名附加或删除 www
。
How/Where 在 jwilder/nginx-proxy
Docker 容器中 nginx.tmpl 或者我可以添加一些简单的重写规则吗?
所有代理容器的一个规则是可以的,但如果可以为每个容器指定规则就更好了。
jwilder/nginx-proxy docker image allows you to add a configuration per virtual host where you can add the rewrite rules as described in here:
要在 per-VIRTUAL_HOST 基础上添加设置,请在 /etc/nginx/vhost.d
下添加您的配置文件。 per-VIRTUAL_HOST 文件必须完全按照 VIRTUAL_HOST
.
命名
为了允许在添加和删除后端时动态配置虚拟主机,将外部目录挂载为 /etc/nginx/vhost.d 最有意义,而不是使用派生图像或挂载单独的配置文件。
例如,如果您有一个名为 www.app.example.com
的虚拟主机,您可以为该主机提供自定义重写配置,如下所示:
在 /etc/nginx/vhost.d
下创建一个名为 www.app.example.com
的文件,然后添加以下内容:
return 301 $scheme://app.example.com$request_uri;
然后创建一个新的nginx容器并将这个目录挂载到它上面。如果你检查 /etc/nginx/conf.d/default.conf
你会注意到虚拟主机已经被修改成这样:
server {
server_name www.app.example.com;
listen 80 ;
access_log /var/log/nginx/access.log vhost;
include /etc/nginx/vhost.d/www.app.example.com;
location / {
proxy_pass http://www.app.example.com;
}
}
include 行包含我们编写的 return 语句,当然您可以向其中添加更多重写规则
我正在对一些网站进行容器化。我希望能够迁移一些重写规则以自动从请求中的域名附加或删除 www
。
How/Where 在 jwilder/nginx-proxy
Docker 容器中 nginx.tmpl 或者我可以添加一些简单的重写规则吗?
所有代理容器的一个规则是可以的,但如果可以为每个容器指定规则就更好了。
jwilder/nginx-proxy docker image allows you to add a configuration per virtual host where you can add the rewrite rules as described in here:
要在 per-VIRTUAL_HOST 基础上添加设置,请在 /etc/nginx/vhost.d
下添加您的配置文件。 per-VIRTUAL_HOST 文件必须完全按照 VIRTUAL_HOST
.
为了允许在添加和删除后端时动态配置虚拟主机,将外部目录挂载为 /etc/nginx/vhost.d 最有意义,而不是使用派生图像或挂载单独的配置文件。
例如,如果您有一个名为 www.app.example.com
的虚拟主机,您可以为该主机提供自定义重写配置,如下所示:
在 /etc/nginx/vhost.d
下创建一个名为 www.app.example.com
的文件,然后添加以下内容:
return 301 $scheme://app.example.com$request_uri;
然后创建一个新的nginx容器并将这个目录挂载到它上面。如果你检查 /etc/nginx/conf.d/default.conf
你会注意到虚拟主机已经被修改成这样:
server {
server_name www.app.example.com;
listen 80 ;
access_log /var/log/nginx/access.log vhost;
include /etc/nginx/vhost.d/www.app.example.com;
location / {
proxy_pass http://www.app.example.com;
}
}
include 行包含我们编写的 return 语句,当然您可以向其中添加更多重写规则