web-dev-qa-db-ja.com

Webサーバーのサブディレクトリで動作するnuxt.jsアプリケーションを生成します

静的なnuxt.jsアプリケーション(nuxt generateでビルド)をWebサーバーのサブディレクトリにデプロイしたいと思います。 nuxtは、生成されたファイルをデフォルトでdistディレクトリに配置します。

default output

distフォルダの親ディレクトリでWebサーバーを起動し、次のページを開いた場合:

http://localhost:34360/dist/

サイトは(失敗して)ドメインルートディレクトリからスクリプトファイルを読み込もうとします。

404 Default

NuxtconfigでpublicPathプロパティを設定してみました。

build: {
  publicPath: '/dist/'
}

アプリケーションは次のようにコンパイルされます。

output with publicPath

これで、nuxtはスクリプトファイルを1レベル下(/ dist/dist)に移動し、ルートレベルで再度検索(/ dist)しますが、それでもファイルは見つかりません。

error with publicpath

サーバー上のどのディレクトリに配置しても、スクリプトとアセットが読み込まれ、自己完結型になるように、サイトを生成するにはどうすればよいですか?

この問題はカバーされています GitHubで しかし、上記のように、提案されたヒント(publicPathを使用)は機能しませんでした。

補足:publicPath absolut(つまり、http://localhost:8080/dist)を指定したくありません。これは機能しますが、新しい問題が発生します。

6
Marc

必要です ルーター/ベース

router: {
  base: '/dist/'
}
4
Aldarund