【问题标题】:Vite manifest not found未找到 Vite 清单
【发布时间】:2022-08-09 20:35:55
【问题描述】:

我正在处理与laravel 9Vitelaravel-vite 一起工作的项目,

在开发环境中一切正常,但在生产 cPanel 服务器中我有这个问题

Vite manifest not found at: /home/???????/cart_shop/public/build/manifest.json

# With 

Missing Vite Manifest File
Did you forget to run `npm install && npm run dev`?

我试图解决这个问题,但没有任何效果,我需要从 vite.config.js 更改公用文件夹和 sup 文件夹构建文件位置,但我找不到这样做的方法。

请注意:cPanel 共享服务器中的文件顺序从

- home
    - public_html
        - cart_shop
           - Root
           - public
           - etc

- home
    - public_html
       - public files and folders  // I changed the index URLs too.
- cart_shop
    - Root
    - etc

我的vite.config.js 配置如下:

import { defineConfig } from \'vite\';
import laravel from \'laravel-vite-plugin\';
import vue from \'@vitejs/plugin-vue\';

export default defineConfig({
    plugins: [
        laravel({
            input: \'resources/js/app.js\',
        }),
        vue({
            template: {
                transformAssetUrls: {
                    base: null,
                    includeAbsolute: false,
                },
            },
        }),
    ],
});
  • 你有什么节点版本? node -v
  • 节点:v16.13.1 与 npm:8.14.0
  • 也许您需要在 vite config 中更改构建目录,打开 vite.config.js 并在输入数组buildDirectory: \'../../public/build\', 下添加,看看它是否有效。
  • 我可以将buildDirectory: \'../public/build\', 放入export default defineConfig 或`plugins:` 中吗?你能把conf 序列发给我吗?

标签: php laravel vite laravel-9


【解决方案1】:

在项目目录中运行

npm install 

然后

在开发运行中

npm run dev 

在生产中

npm run build

Laravel Vite 默认带有新的 laravel 安装,但如果需要,您可以通过此 guide 迁移回混音

https://github.com/laravel/vite-plugin/blob/main/UPGRADE.md#migrating-from-vite-to-laravel-mix

【讨论】:

  • 我的问题只是想知道如何将我的 vite 公用文件夹移动到我的新文件夹 public_html
  • 解决这个问题会更有意义,因为 Vite 是未来很长一段时间的默认选择。
【解决方案2】:

问题解决了,

首先:我尝试将publicDirectory 配置添加到vite.config.js 中的laravel-vite-plugin 设置中,以解决构建问题但清单仍然没有建立。

最后:我将除build 之外的所有文件和文件夹从public 移动到bublic_html 然后npm run build 并且工作正常。

【讨论】:

    【解决方案3】:

    只需转到您的公共文件夹,就会有一个热的该文件中的文件有一个这样的链接http://127.0.0.1:3000将此链接更改为您的域链接我的意思是您的网站链接

    【讨论】:

    • 公共文件夹中没有这样的热文件。你能更具体一点吗?
    • 首先你需要在你的 vite.config.js 中添加这段代码 import { defineConfig } from 'vite';从“laravel-vite-plugin”导入 laravel; export default defineConfig({ buildDirectory: ['build',], plugins: [ laravel([ 'resources/css/app.css', 'resources/js/app.js', ]), ], server: { https:真,主机:'0.0.0.0',},});然后将 public/build 中的所有文件移动到 public_html 除了 build/manifest.json 然后它就会工作
    【解决方案4】:

    仅由于节点版本,我遇到了同样的问题。我升级到最新版本,它工作正常。

    对于 Ubuntu,使用 npm 中的 n 模块来升级节点:

    sudo npm cache clean -f
    sudo npm install -g n
    sudo n stable
    

    要升级到最新版本(而不是当前稳定版本),您可以使用:

    sudo n latest
    

    您可能还需要修复 PATH:

      sudo apt-get install --reinstall nodejs-legacy     # fix /usr/bin/node
    

    撤销:

      sudo n rm 6.0.0     # replace number with version of Node that was installed
      sudo npm uninstall -g n
    

    您可能需要重新启动终端才能查看更新的节点版本。

    发现于Ask Ubuntu

    【讨论】:

      猜你喜欢
      • 2022-10-05
      • 2022-10-30
      • 2021-12-16
      • 2022-12-09
      • 2022-01-11
      • 2023-01-18
      • 2022-06-27
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多