【问题标题】:Lets Encrypt multiple nginxconfLetsencrypt 多个 nginx 配置文件
【发布时间】:2017-06-18 08:35:23
【问题描述】:

我有一些关于使用 Let's Encrypt 和多个 nginxconf 文件的问题。

.知名位置块

我需要把这个位置块放在每个 nginxconf 文件中,还是只放在默认的 nginxconf 中?

location ~ /.well-known {
      allow all;
}

我的默认配置文件用于显示“Nginx 正在运行”页面。我的其他服务器块位于单独的 nginxconf 文件中,用于将特定应用程序绑定到特定域。

我的文档根是什么?

我在我的服务器上提供多个 Django 应用程序。在Let's Encrypt tutorial 中,他们谈论的是文档根目录。这应该是我所有应用程序/证书的单个文档根目录(例如 /var/www/html) 还是每个应用程序都有自己的文档根目录(例如我的 Django 应用程序的根文件夹) ?

注意:我的 Django 应用程序不在 /var/www/html 中,而是在我的主目录中的一个目录中。

【问题讨论】:

  • 每个域都需要一个单独的证书,所以我认为每个域都需要相应的 .well-known。

标签: python django nginx encryption lets-encrypt


【解决方案1】:

您必须在每个需要验证的 nginx 配置文件中包含“知名”位置块。 因此,如果您要使用多个 nginx 配置文件为多个域提供服务,则必须在所有这些文件中放置“知名”位置块。

文档根目录是 nginx 搜索文件的地方。 /var/www/html 是默认的文档根目录 例如:

 location ~ /media {
    root /www/media;
}

当你点击http://my-server/media/image1 之类的 URL 时,nginx 会在 /www/media 路径中搜索文件。 因此,您可以指定自己的文档根目录,如果您的 django 应用程序位于 /home/my_django 中,则在 location 块中指定 root /home/my_django。

注意:

location ~ /.well-known {
   allow all;
}

Nginx 在 /var/www/html 中搜索 .well-known,因此如果您在其他位置有 .well-known,请指定 'root' 指令。

【讨论】:

    猜你喜欢
    • 2017-03-25
    • 2019-09-04
    • 1970-01-01
    • 2016-10-17
    • 1970-01-01
    • 2013-12-07
    • 2018-02-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多