首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在jwilder/nginx-proxy下将no-www重定向到www?

如何在jwilder/nginx-proxy下将no-www重定向到www?
EN

Stack Overflow用户
提问于 2016-03-14 02:18:47
回答 6查看 3.1K关注 0票数 2

我使用nginx docker(https://github.com/jwilder/nginx-proxy),但是我发现它无法像这里提到的那样修改.htaccess (Nginx no-www to www and www to no-www)。谁能告诉我如何在上面的jwilder/nginx-proxy下将no-www重定向到www。

EN

回答 6

Stack Overflow用户

发布于 2019-06-05 02:22:20

这可能有点晚了,但我发现这里的解决方案太麻烦了,所以我为jwilder/nginx-proxy创建了adamkdean/redirect轻量级伴生服务。

下面的示例简单地显示了HTTPS,但是如果您喜欢使用JrCs的letsencrypt-nginx-proxy配套服务,您可以将其连接到HTTPS。

对于adamkdean/redirect,只需提供两个环境变量,一个是重定向位置,另一个是状态码(可以是301、302、303或307),缺省值为307 (如果省略REDIRECT_STATUS_CODE)。

代码语言:javascript
复制
version: '2'

services:
  nginx-proxy:
    image: jwilder/nginx-proxy
    ports:
      - 80:80
    volumes:
      - /var/run/docker.sock:/tmp/docker.sock:ro

  redirect:
    image: adamkdean/redirect
    environment:
      - VIRTUAL_HOST=example.com
      - REDIRECT_LOCATION="http://www.example.com"
      - REDIRECT_STATUS_CODE=301

  example:
    image: example
    environment:
      - VIRTUAL_HOST=www.example.com

在这里找到存储库:https://github.com/adamkdean/redirect

票数 4
EN

Stack Overflow用户

发布于 2017-07-27 21:41:41

您可以添加重定向,而无需更改nginx.tmpl。可以选择直接在server {下或在默认位置location / {中导入更多配置文件。参见https://github.com/jwilder/nginx-proxy#per-virtual_host

创建并挂载包含以下内容的文件/etc/nginx/vhost.d/your-website.com/etc/nginx/vhost.d/your-website.com_location

代码语言:javascript
复制
rewrite ^/(.*)$ http://www.your-website.com/$1 permanent;
票数 3
EN

Stack Overflow用户

发布于 2016-03-14 13:55:58

您需要:

  • git clone https://github.com/jwilder/nginx-proxy
  • rebuild nginx.tmpl
  • 自己重建nginx-proxy镜像。

这样,您将生成一个新的nginx-proxy镜像,其中包含您需要的指令。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35973947

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档