web-dev-qa-db-ja.com

物理ページの次のJS npm start app load 404 page not foundエラー

私のプロジェクトはrun devコマンドでうまく動作しますが、npm start他のページで404ページが見つかりませんというエラーが表示されました(pages /...)Index.jsを除きます。

フォーム(gthubの問題、ブログ)からいくつかの方法を試しましたが、何も機能しませんでした。

何か案が?実際には、run devとstartの間に違いがあるはずなのはなぜですか?開発プロセス中にアプリの問題を確認する必要があると思います

package.jsonからのスクリプト

"scripts": {
  "dev": "next",
  "start": "next start",
  "build": "next build"

}、

そしてnext.config.js

const withCSS = require("@zeit/next-css");
module.exports = withCSS({
  cssModules: true,
  cssLoaderOptions: {
    importLoaders: 1,
    localIdentName: "[local]___[hash:base64:5]"
  }});

ご覧のとおり、nextJSのインストール後は何も変更していません。

enter image description hereenter image description here

2
Elvin Mammadov

Windowsでファイル名に大文字が含まれていると、404エラーが発生することがわかりました。

すべてのファイル名を小文字に変更すると、404エラーはなくなりました。

1
Gaurav Goyal

まず、どのような種類のアプリを作成したいかを理解する必要があります。サーバーレスですか?または、サーバーの種類と使用したいWebサーバー(オプションが非常に多い)。

サーバーレスアプリの場合:

プロダクションビルドに必要なのはnext exportだけです。この関数は、Webサイトとして提供される静的ファイルを生成します。 詳細はこちら ...

サーバーのあるアプリの場合:

npm run startを実行する場合は、最初にnpm run buildを実行する必要があります。

npm run buildビルドをコンパイルし、プロダクションモード用に最適化します。

npm run startウェブサーバーを実行して、htmlファイルを提供します。

これらの2つのステップを実行した場合、サーバーファイルに問題があることを意味します。WebサーバーのAPIはリクエストをリッスンしなかったため、正しいページにリダイレクトされません。

0
Darryl RN

アプリケーションを開始する前に、npm run buildコマンドを使用してビルドし、アプリケーションを開始する必要があります。

0
Nikas