Развернуть сайт gatsby для netlify с помощью --prefix-paths - PullRequest
0 голосов
/ 03 июня 2019

Я пытаюсь развернуть блог-сайт, созданный с помощью Gatsby, для Netlify.Дело в том, что я хочу обслуживать сайт из / blog.Следуя документам, я изменил файл gatsby-config.js, добавив в него pathPrefix следующим образом:

module.exports = {
  pathPrefix: `/blog`,
  siteMetadata: {...},
  plugins: [...]
}

Далее я изменил команду сборки, включив в нее --prefix-paths:

gatsby build --prefix-paths

Когда я запускаю сайт локально, используя gatsby serve --prefix-paths, все работает нормально.Однако после того, как я развернул Netlify, сайт все еще обслуживается из root /, а не из / blog.Мой netlify.toml:

[build]
  Command = "npm run build"
  Functions = "lambda"
  Publish = "public"

Команда сборки frum netlify.toml запускает команду из package.json, а именно:

"build": "run-p build:**",
"build:app": "gatsby build --prefix-paths",
"build:lambda": "netlify-lambda build src/lambda",

Чего мне здесь не хватает?Нужно ли мне сделать какую-то другую конфигурацию для netlify или что-то еще?

1 Ответ

0 голосов
/ 05 июня 2019

Для тех, кто сталкивается с той же проблемой. Я смог решить эту проблему, скопировав все файлы из общей папки в папку «блог», например:

"build": "run-p build:**",
"build:app": "npm run clean && gatsby build --prefix-paths && npm run move",
"build:lambda": "netlify-lambda build src/lambda",
"move": "cd public && mkdir blog | mv * blog"

Я добавил команду перемещения в package.json и выполняю ее после сборки. Я не уверен, что именно так я и собираюсь это делать, но после некоторого исследования (я также нашел начинающего, который делал это), я думаю, что все в порядке.

Теперь, когда файлы обслуживаются из "/ blog", все работает нормально.

...