You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Laravel 9修改public目录名称及调整项目结构的实现步骤

Laravel 9 修改应用目录结构并替换默认public目录为public_html的分步指南

针对Laravel 9改用Vite替代Mix后,旧的public目录修改流程失效的问题,以下是适配Laravel 9的完整分步操作:

目标目录结构

项目根目录/
├─ laravel-app/  # 存放所有Laravel核心文件(app、resources、storage、vendor、bootstrap等)
└─ public_html/  # 原public目录重命名,存放前端入口、编译后的资源文件

分步操作

1. 调整物理目录结构

  • 将原Laravel项目中除public外的所有文件和目录,移动到新建的laravel-app目录中
  • 将原public目录重命名为public_html,放在项目根目录下(与laravel-app同级)

2. 修改public_html/index.php的路径引用

打开public_html/index.php,更新自动加载和应用实例的路径:

// 原代码
require __DIR__.'/../vendor/autoload.php';
$app = require_once __DIR__.'/../bootstrap/app.php';

// 修改后
require __DIR__.'/../laravel-app/vendor/autoload.php';
$app = require_once __DIR__.'/../laravel-app/bootstrap/app.php';

3. 配置Laravel核心的public路径绑定

打开laravel-app/bootstrap/app.php,在Application实例创建后,添加public路径的绑定:

$app = new Illuminate\Foundation\Application(
    $_ENV['APP_BASE_PATH'] ?? dirname(__DIR__)
);

// 添加这一行,指定public目录的实际路径
$app->bind('path.public', function() {
    return base_path('../public_html');
});

这一步是让Laravel框架本身识别到新的public目录位置,生成asset URL、存储临时文件等场景都会依赖这个配置。

4. 配置Vite插件的目录指向

打开laravel-app/vite.config.js,修改Laravel插件的配置,明确指定public目录:

import { defineConfig } from 'vite';
import laravel from 'laravel-vite-plugin';

export default defineConfig({
    plugins: [
        laravel({
            input: [
                'resources/css/app.css',
                'resources/js/app.js',
            ],
            publicDirectory: '../public_html', // 告诉Vite新的public目录位置
            buildDirectory: 'build', // 保持默认编译输出目录,无需修改
        }),
    ],
});

旧流程失效的核心原因就在这里:Vite插件默认依赖Laravel的path.public,同时需要显式配置publicDirectory,否则会去默认的public/目录找hot文件,导致ENOENT错误。

5. 验证配置

  • 运行php artisan serve,访问测试地址确认应用正常加载
  • 运行npm run dev,此时Vite会在public_html/目录下生成hot文件,不再出现报错
  • 运行npm run build,检查public_html/build/目录是否生成了编译后的资源文件

6. 适配.env配置(可选)

如果你的域名直接指向public_html目录,确保.env里的APP_URL正确:

APP_URL=http://your-project-domain.test

内容的提问来源于stack exchange,提问作者Zephni

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.17 05:21:12