在我的 webapp 子文件夹中链接幽灵博客

Linking ghost blog in my webapp subfolder

我已经创建了一个网络应用程序和幽灵博客。 Web 应用 运行ning 在端口 80 上,ghost 博客在 2368 上(ghost 的默认值)。

我想在 mydomain/blog 中添加博客页面。 谁能帮我解决这个问题。

我可以使用 nginx 运行 端口 80 上的博客,但是如何 运行 在我们的网络应用程序的特定路径上。

这是nginx的配置文件

server {
    listen 3333;
    server_name  localhost;
    location / {
        proxy_set_header   X-Real-IP $remote_addr;
        proxy_set_header   Host      $http_host;
        proxy_pass         http://127.0.0.1:1337;
    }
    location /blog {
    rewrite ^/blog(.*) / break;    
    proxy_pass    http://127.0.0.1:2368;
    }
}

我托管在端口 1337 上的应用程序在 3333 nginx link 上运行良好 但是当我打开 localhost:3333/blog 时,博客无法正常显示。它的文字即将到来,但它完全扭曲似乎 link css 不见了。

关于这个我有两个问题

1.如何在 mydomain/blog 上正确托管博客,在本例中为 localhost:3333/blog。

2。当我试图打开任何页面时(尽管它看起来扭曲了)然后由于在我们的主应用程序中找不到该特定路径因此它将它们重定向到主页?

您正在寻找的是在子目录中托管 Ghost。此 link 描述了您需要采取哪些步骤来完成这项工作:https://www.allaboutghost.com/how-to-install-ghost-in-a-subdirectory/

让我知道它是否有效:)。

我终于可以运行了所以我要在这里回答

假设我有一个应用程序和一个博客。我在 example.com 上有 运行 应用程序,在 example.com/blog

上有博客

1.应用程序相关设置

假设您的应用 运行正在端口 1337 上运行。

2。正确安装ghost

一个。你可以使用 this link 安装 ghost。

b。将ghost配置文件的url修改为http://example.com/blog

c。重启幽灵

npm start --production

NODE_ENV=production forever start index.js

3正确安装nginx

一个。你可以使用this link来安装nginx。

b。现在在 /etc/nginx/site-enabled 文件夹中创建 example.conf 文件。

server {
    listen 80;
    server_name  example.com;
    location / {
        proxy_set_header   X-Real-IP $remote_addr;
        proxy_set_header   Host      $http_host;
        proxy_pass         http://127.0.0.1:1337;
    }
    location ^~ /blog {
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header Host $http_host;
        proxy_set_header X-NginX-Proxy true;

        proxy_pass http://127.0.0.1:2368;
        proxy_redirect off;
    }
}

c。重启nginx服务。

sudo service nginx restart