ubuntu

Laravel在Ubuntu上如何实现热更新

小樊
45
2025-09-14 21:38:40
栏目: 智能运维

在 Ubuntu 上,你可以使用 Laravel 的内置功能或第三方工具来实现热更新。这里有两种方法:

方法一:使用 Laravel Mix 的热更新(推荐)

Laravel Mix 是一个基于 Webpack 的构建工具,它提供了一个简单的方式来设置热更新。要使用 Laravel Mix 的热更新,请按照以下步骤操作:

  1. 安装 Node.js 和 NPM(如果尚未安装):
sudo apt update
sudo apt install nodejs npm
  1. 在项目根目录下创建一个名为 package.json 的文件(如果尚未创建):
npm init -y
  1. 安装 Laravel Mix 和相关依赖项:
npm install laravel-mix cross-env --save-dev
  1. 在项目根目录下创建一个名为 webpack.mix.js 的文件,并添加以下内容:
const mix = require('laravel-mix');

mix.js('resources/js/app.js', 'public/js')
   .sass('resources/sass/app.scss', 'public/css');
  1. package.json 文件中的 scripts 部分添加以下命令:
"scripts": {
    "hot": "cross-env NODE_ENV=development mix watch"
}
  1. 运行以下命令启动热更新:
npm run hot

现在,当你修改项目中的 JavaScript 或 CSS 文件时,浏览器将自动刷新以显示更改。

方法二:使用 BrowserSync

BrowserSync 是一个可以实现热更新的第三方工具。要使用 BrowserSync,请按照以下步骤操作:

  1. 安装 Node.js 和 NPM(如果尚未安装):
sudo apt update
sudo apt install nodejs npm
  1. 在项目根目录下创建一个名为 package.json 的文件(如果尚未创建):
npm init -y
  1. 安装 BrowserSync:
npm install browser-sync browser-sync-webpack-plugin --save-dev
  1. 在项目根目录下创建一个名为 bs-config.js 的文件,并添加以下内容:
module.exports = {
    server: {
        baseDir: './public'
    },
    files: [
        'public/**/*.*'
    ],
    injectChanges: true,
    watchOptions: {
        ignored: '**/node_modules/**'
    }
};
  1. package.json 文件中的 scripts 部分添加以下命令:
"scripts": {
    "hot": "cross-env NODE_ENV=development browser-sync start --config bs-config.js"
}
  1. 运行以下命令启动热更新:
npm run hot

现在,当你修改项目中的任何文件时,BrowserSync 将自动刷新浏览器以显示更改。

这两种方法都可以实现 Laravel 项目的热更新。你可以根据自己的需求和喜好选择其中之一。

0
看了该问题的人还看了