Javascript 在Express应用程序中托管盖茨比博客

Javascript 在Express应用程序中托管盖茨比博客,javascript,gatsby,Javascript,Gatsby,这可能是一个愚蠢的问题,如果是这样,我道歉。我把我的网站放在Heroku(快速应用程序)上。我还有一个与盖茨比一起创建的博客,我想在www.mysite.com/blog上托管盖茨比,我可以在我的Express app中托管我的盖茨比应用程序吗?如果可以,我如何在我的Express routes上呼叫盖茨比 谢谢,所以这个问题的答案其实很简单,因为盖茨比只生成静态HTML、CSS和JS。这些文件可以通过App.js(在我的例子中是“/blog”)的特定路径提供 关键是在构建应用程序和部署文件之前

这可能是一个愚蠢的问题,如果是这样,我道歉。我把我的网站放在Heroku(快速应用程序)上。我还有一个与盖茨比一起创建的博客,我想在www.mysite.com/blog上托管盖茨比,我可以在我的Express app中托管我的盖茨比应用程序吗?如果可以,我如何在我的Express routes上呼叫盖茨比


谢谢,所以这个问题的答案其实很简单,因为盖茨比只生成静态HTML、CSS和JS。这些文件可以通过App.js(在我的例子中是“/blog”)的特定路径提供

关键是在构建应用程序和部署文件之前,确保在Gatsby中设置了路径前缀。这意味着在构建应用程序时,所有资产都以“/blog”作为前缀,这意味着可以在Express应用程序的子文件夹中找到资产

App.js

app.use(express.static(path.join(__dirname, 'public')));
app.use('/', indexRouter);
app.use('/blog', express.static(__dirname + '/blog/public'));
app.use('/users', usersRouter);
app.use('/api/v1/communicate', sendMail);
module.exports = {
  pathPrefix: '/blog',
  siteMetadata: {
    siteUrl: urljoin(config.siteUrl),
    rssMetadata: {
      site_url: urljoin(config.siteUrl),
      feed_url: urljoin(config.siteUrl, config.pathPrefix, config.siteRss),
      title: config.siteTitle,
      description: config.siteDescription,
      image_url: `${urljoin(
        config.siteUrl,
        config.pathPrefix
      )}/logos/logo-512.png`,
      copyright: config.copyright
    }
Gatsy config.js

app.use(express.static(path.join(__dirname, 'public')));
app.use('/', indexRouter);
app.use('/blog', express.static(__dirname + '/blog/public'));
app.use('/users', usersRouter);
app.use('/api/v1/communicate', sendMail);
module.exports = {
  pathPrefix: '/blog',
  siteMetadata: {
    siteUrl: urljoin(config.siteUrl),
    rssMetadata: {
      site_url: urljoin(config.siteUrl),
      feed_url: urljoin(config.siteUrl, config.pathPrefix, config.siteRss),
      title: config.siteTitle,
      description: config.siteDescription,
      image_url: `${urljoin(
        config.siteUrl,
        config.pathPrefix
      )}/logos/logo-512.png`,
      copyright: config.copyright
    }

您是否遵循了“快速入门”的要求?到目前为止,您尝试了什么?我实际上已经找到了解决我的问题的方法,请您将我链接到前面提到的“快速入门”,更具体地说,该部分解释了这一点,因为我无法找到此类文档。。