【问题标题】:Nginx, one application, many domains, redirect SSL and non-www for all domainsNginx,一个应用程序,多个域,为所有域重定向 SSL 和非 www
【发布时间】:2018-10-25 19:46:36
【问题描述】:

我在 Nginx 上有一个 Laravel 应用程序,它提供(托管)许多不同的域。对于非 www 到 www 和 http 到 https,我需要 301 直接。

我尝试了很多方法,但都无法成功。有人有这个用例的好例子吗?

【问题讨论】:

    标签: laravel ssl nginx


    【解决方案1】:

    希望对你有帮助

    server {
        listen 80 example.com;
    
        server_name *.example.com example.com;
        return 301 https://www.$host$request_uri;
    }
    

    【讨论】:

    • 看起来 http 到 https 包括 http 非 www 就可以了。但是 https 非 www 呢?
    • 您能否根据我的知识更多地描述您想要重定向的域?如果域以 www 开头,则将没有前缀 www.example.domain.com,这意味着它是一个主域和通配符域看起来像 anythi.domain.com
    • 此应用服务于多个域。但对于我的例子,我有 www.thebristolartist.tk 和 www.thebristolgallery.tk。如果 www 不明确,我希望他们重定向到 www。我希望他们返回 https 版本。如果有帮助,我可以粘贴当前不起作用的 conf 文件。
    【解决方案2】:

    这为我解决了:

    if ($host ~* ^[^.]+\.[^.]+$) {
        rewrite ^(.*)$ https://www.$host$1 permanent;
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-01-09
      • 1970-01-01
      • 2020-12-31
      • 2019-06-14
      • 2017-11-03
      • 2016-04-02
      • 1970-01-01
      相关资源
      最近更新 更多