极简云主机上纯命令行部署laravel需三步:一、安装php 8.1+、composer、nginx;二、创建项目并设好/var/www/myapp/public根目录及storage/bootstrap/cache写权限;三、配置nginx的try_files与ssl,运行php artisan key:generate并确保.env和日志目录权限正确。

在极简云主机(如轻量应用服务器、腾讯云Lighthouse、阿里云共享型实例等)上从零安装Laravel项目,核心是「环境搭得稳、权限配得对、部署走得顺」。不需要宝塔或面板,纯命令行操作更可控、更轻量。
一、确认基础环境并安装必要组件
极简云主机通常预装精简版Linux(如Ubuntu 22.04/24.04 或 CentOS Stream 9),需手动补全PHP运行栈:
- 更新系统:
sudo apt update && sudo apt upgrade -y(Ubuntu/Debian)或sudo dnf update -y(CentOS Stream) - 安装PHP 8.1+ 及常用扩展:
sudo apt install php8.1-cli php8.1-mbstring php8.1-xml php8.1-zip php8.1-curl php8.1-bcmath php8.1-opcache -y - 安装Composer(全局):
curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/local/bin --filename=composer - 安装Nginx(推荐):
sudo apt install nginx -y;启动并设开机自启:sudo systemctl enable nginx && sudo systemctl start nginx
二、创建Laravel项目并配置Web根目录
不建议直接在/var/www/html下开发,推荐规范路径 + 正确权限隔离:
- 新建项目目录:
sudo mkdir -p /var/www/myapp,用普通用户(如ubuntu)进入:cd /var/www/myapp - 用Composer创建Laravel(跳过Git克隆,避免权限混乱):
composer create-project laravel/laravel . --no-dev - 设置正确所有权:
sudo chown -R $USER:www-data /var/www/myapp,并赋予storage和bootstrap/cache写权限:chmod -R 775 storage bootstrap/cache - Nginx配置指向
/var/www/myapp/public(不是项目根目录),示例server块中必须含:root /var/www/myapp/public;
三、配置Nginx与启用HTTPS(可选但推荐)
极简主机常带免费SSL支持(如腾讯云/阿里云控制台一键申请),配置要点如下:
- 编辑站点配置:
sudo nano /etc/nginx/sites-available/myapp,启用时软链到sites-enabled - 关键配置项不能漏:启用
try_files $uri $uri/ /index.php?$query_string;,关闭server_tokens提升安全性 - 申请SSL后,在Nginx中添加
listen 443 ssl段,并指定ssl_certificate和ssl_certificate_key路径 - 测试并重载:
sudo nginx -t && sudo systemctl reload nginx
四、运行与后续维护要点
Laravel在极简主机上无需Supervisor或队列服务也能跑通基础功能,但要注意几个实际细节:
-
APP_KEY未生成会报错:首次访问前务必执行
php artisan key:generate(在/var/www/myapp目录下) - 数据库配置写入
.env后,运行php artisan config:clear刷新缓存 - 如用SQLite(无MySQL时最简选择),确保
database/database.sqlite存在且web用户有读写权:touch database/database.sqlite && chmod 664 database/database.sqlite - 日志写入失败?检查
storage/logs是否可写,或临时用sudo setfacl -R -m u:www-data:rwx storage bootstrap/cache(如系统支持ACL)
整个过程约10–15分钟,没冗余软件,资源占用低,适合个人博客、后台管理、API服务等中小场景。关键不在步骤多寡,而在每一步的路径、权限、配置指向是否精准。











