【问题标题】:setting up two ghost blogs, using two domains on one server using nginx设置两个ghost博客,使用nginx在一台服务器上使用两个域
【发布时间】:2025-12-03 15:55:01
【问题描述】:

设置是:2 个不同的域,2 个单独的 GHOST 博客安装在一台 nginx ubuntu 18.04 LTS 服务器上

现在域 A 和域 B 都指向 GHOST 博客 A。我希望域 A 指向 GHOST BLOG A,域 B 指向 GHOST BLOG B。

两个域都通过 DNS 指向同一个服务器 IP。

请查看我的配置 config.json 文件,如下所示:

博客A

{
  "url": "https://til.technology",
  "server": {
    "port": 2368,
    "host": "127.0.0.1"
  },
  "database": {
    "client": "mysql",
    "connection": {
      "host": "localhost",
      "user": "dbu",
      "password": "password",
      "database": "db"
    }
  },
  "mail": {
    "transport": "Direct"
  },
  "logging": {
    "transports": [
      "file",
      "stdout"
    ]
  },
  "process": "systemd",
  "paths": {
    "contentPath": "/var/www/html/til.technology/content"
  },
  "bootstrap-socket": {
    "port": 8000,
    "host": "localhost"
  }
}

博客 B

{
  "url": "https://losing.ink",
  "server": {
    "port": 2370,
    "host": "127.0.0.1"
  },
  "database": {
    "client": "mysql",
    "connection": {
      "host": "localhost",
      "user": "dbu2",
      "password": "pw2",
      "database": "db2"
    }
  },
  "mail": {
    "transport": "Direct"
  },
  "logging": {
    "transports": [
      "file",
      "stdout"
    ]
  },
  "process": "systemd",
  "paths": {
    "contentPath": "/var/www/html/losing.ink/content"
  },
  "bootstrap-socket": {
    "port": 8000,
    "host": "localhost"
  }
}

而 nginx 服务器块如下:

博客A

server {
    listen 80;
    listen [::]:80;

    server_name til.technology www.til.technology;
    root /var/www/html/til.technology/system/nginx-root;

    location / {
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header Host $http_host;
        proxy_pass http://127.0.0.1:2368;
        proxy_redirect off;
    }

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

    client_max_body_size 50m;
}

博客 B

server {
    listen 80;
    listen [::]:80;

    server_name losing.ink www.losing.ink;
    root /var/www/html/losing.ink/system/nginx-root;

    location / {
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header Host $http_host;
        proxy_pass http://127.0.0.1:2370;
        proxy_redirect off;

    }

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

    client_max_body_size 50m;
}

【问题讨论】:

  • 首先,请接受我的编辑,以便数据库凭据(看起来非常真实)被匿名化,并且没有人可以尝试进入。
  • 以下是我在两个单独的子目录中使用 ghost cli 工具的方法:tleyden.github.io/blog/2020/06/27/…

标签: nginx ghost-blog


【解决方案1】:

所以事实证明我所做的一切大部分都是正确的,但似乎在 Ghost 的 CLi 安装程序中存在错误,并且他们已在几个小时前发布的最新更新中修复了该问题。谢谢

【讨论】: