7
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

nuxt.js × GAE × nuxt-sass-resources-loader で500 Internal Server Error

Posted at

年末年始を使ってnuxt.jsのSSR(サーバーサイドレンダリング)に触ってみようと思い、ここ数日、作ったアプリをGoogle App Engineで動かしていました。

Google App Engine Node.js スタンダード環境のドキュメント  |  Node.js 用 App Engine スタンダード環境に関するドキュメント  |  Google Cloud

悪戦苦闘しつつ何とかデプロイには漕ぎ着けたものの、500 internal server errorが表示されてしまいました。

image.png

このエラーの確認と対処の方法が、単純な割には調べてもなかなか見つからなかったので書いておきます。

エラー内容の確認 

まず最初にヘルプや公式ドキュメントを見て試したのが、Google Cloud Platformのダッシュボード内に表示されている「Error Reporting」の確認。

image.png

しかしここには500 Internal Server Errorに関する情報はありませんでした。(表示されているのは試しに「nuxt start」の中身を書き換えた時に出た無関係なエラーです)

内部エラーを突きとめるには、Google App Engineページの「ログビューア」。

アプリケーション ログの書き込み  |  Node.js 用 App Engine スタンダード環境に関するドキュメント  |  Google Cloud

にもちゃんと書いてあるので単に自分が見落としていただけなのですが、このページがお馴染みのConsoleのログになっているようで、私の場合は

image.png

nuxt-sass-resources-loaderに原因があるらしいことがわかりました。

何が問題だったのか

とはいえ原因がわかっただけでどう解決すれば良いのかわかりません。run devでlocalhostでの開発中はエラーにはなっておらず、

「500 error nuxt-sass-resources-loader」などで検索してみるも何が悪いのかさっぱりわからず。

何か手掛かりはないかとnpmjsの公式ページを見てみると、

Note that installing as a dev dependency --save-dev or -D will not work correctly.

という気になる一文を発見。

まさかと思いつつpackage.jsonを確認すると、

package.json
  "dependencies": {
    "@nuxtjs/axios": "^5.0.0",
    "@nuxtjs/pwa": "^2.6.0",
    "cross-env": "^5.2.0",
    "nuxt": "^2.0.0"
  },
  "devDependencies": {
    "node-sass": "^4.11.0",
    "nodemon": "^1.11.0",
    "sass-loader": "^7.1.0",
    "nuxt-sass-resources-loader": "^2.0.5"
  }

しっかり--save-devで読み込んでいました。

ということで、

npm rm nuxt-sass-resources-loader --save-dev
npm i nuxt-sass-resources-loader

これであっさり解決しました。

英語だからと適当に読み飛ばしたり日本語の解説記事だけ読んでコピペでコマンド打ったりすると痛い目見るという教訓を得ました。

ただ、それなりに参考になりそうなサイトや記事であっても、npm i nuxt-sass-resources-loader --save-devと書いてあることが結構あったのでお気をつけください。(npm run generateする分には問題なく動くので、気にしない方は別に良いのかもしれませんが)

ちなみにデプロイまでの道のりでハマった点は多すぎるので気が向いたら書いていきます。

7
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?