离线部署 Laravel 需提前在有网环境下载完整源码包、执行 composer install 获取 vendor 目录并打包,离线机器解压后运行 php artisan key:generate 并启动服务即可。

在没有网络连接的服务器或内网开发环境中部署 Laravel,必须提前将所有依赖组件完整下载并带入离线环境,否则 composer install 会因无法访问 packagist.org 或 GitHub 而失败。
准备离线所需全部文件
在有网机器上执行以下操作,缺一不可:
① 下载目标 Laravel 版本的完整源码压缩包:访问 GitHub Laravel Releases 页面,选择你需要的稳定版本(如 v11.15.0),点击 Assets 下的 laravel-v11.15.0.zip 下载。
② 下载项目所依赖的全部 vendor 包:进入该 Laravel 版本对应的 composer.lock 文件所在目录(即解压后目录),运行 composer install --no-dev --prefer-dist --dry-run 查看将要安装的包列表;再用 composer install --no-dev --prefer-dist --no-scripts 实际执行——此时 Composer 会从镜像源(如阿里云)完整拉取所有依赖到本地 vendor 目录。
③ 打包 vendor 目录:将整个 vendor 文件夹与 Laravel 源码根目录一起压缩为一个 ZIP 文件(例如 laravel-offline-full.zip),确保目录结构为:laravel-offline-full/ → composer.json、.env.example、app/、bootstrap/、vendor/...。这一步不能跳过,【离线环境里没有 vendor 目录就完全无法启动 Laravel】。
在离线机器上还原项目
方法一:直接解压即用(推荐给测试/演示场景)
把 laravel-offline-full.zip 复制到离线机器,解压到任意路径(如 D:\laravel-app);打开命令行进入该目录,执行:php artisan key:generate。这会基于当前环境生成 APP_KEY 并写入 .env 文件。
方法二:重建 vendor(适合需更新或清理场景)
仅解压 Laravel 源码部分(不含 vendor),确保包含 composer.json 和 composer.lock;将之前下载好的完整 vendor 目录单独复制过来;运行 composer install --no-dev --no-scripts --ignore-platform-reqs。该命令不联网、不执行脚本、跳过 PHP 版本检查,仅校验 vendor 内容完整性。
注意:若离线机器 PHP 版本低于 Laravel 要求(v11 需 PHP ≥ 8.2),--ignore-platform-reqs 可临时绕过报错,但运行时仍可能崩溃。
启动服务验证是否成功
进入项目根目录,执行:php artisan serve --host=0.0.0.0 --port=8000。
若终端显示 “Starting Laravel development server: http://0.0.0.0:8000”,且浏览器能打开该地址并看到 Laravel 欢迎页,说明离线安装已完成。


















