云服务器搭建 Laravel 网站

本文介绍了如何在云服务器搭建基于 Laravel 框架的网站,涵盖环境准备(如安装 PHPMySQLNginx/Apache)、Laravel 项目部署(含 Composer 安装、.env 配置权限设置)、Web 服务配置及常见问题排查(如 URL 重写、存储链接、缓存清理),强调安全实践(禁用调试模式、设置正确文件权限)与性能优化建议,适合初学者快速上线 Laravel 应用。

云服务器上高效搭建 Laravel 网站全指南

数字化转型加速的今天,Laravel 凭借其优雅语法、丰富生态与活跃社区,成为构建现代 Web 应用的首选框架之一,而云服务器(如阿里云 ECS、腾讯云 CVM AWS EC2)则提供了弹性、可靠且成本可控的部署环境,本文将带你用最简明、可复现的方式,在主流 Linux 云服务器(Ubuntu 22.04 LTS)上完成 Laravel 网站的一站式部署——不依赖 Docker 或宝塔面板,全程命令行操作,兼顾安全性与生产可用性

第一步:基础环境准备
登录云服务器后,先更新系统并安装必要工具

sudo apt update && sudo apt upgrade -y  
sudo apt install -y git curl wget unzip nginx php8.1-cli php8.1-fpm php8.1-mysql php8.1-curl php8.1-gd php8.1-mbstring php8.1-xml php8.1-bcmath php8.1-opcache  

注意:Laravel 10+ 要求 PHP ≥ 8.1,需确认版本匹配,接着安装 Composer(全局):

curl -sS HTTPS://getcomposer.org/installer | sudo php -- --install-dir=/usr/local/bin --filename=composer  

第二步:部署 Laravel 应用
进入网站根目录(如 /var/www),创建项目:

sudo mkdir -p /var/www/myapp  
sudo chown $USER:$USER /var/www/myapp  
cd /var/www/myapp  
composer create-project laravel/laravel . --prefer-dist --no-dev  

生成 .env 文件并配置数据库(建议使用云数据库 RDS,而非本地 MySQL):

cp .env.example .env  
php artisan key:generate  

编辑 .env:设置 APP_URL=https://your-domain.comDB_HOST=your-rds-endpoint,并启用 APP_DEBUG=false

第三步:Nginx 配置与权限优化
新建 Nginx 站点配置:

sudo nano /etc/nginx/sites-available/myapp  
```  精简如下(关键路径与安全设置):  
```nginx  
server {  
    listen 80;  
    server_name your-domain.com;  
    root /var/www/myapp/public;  
    index index.php;  
    location / {  
        try_files $uri $uri/ /index.php?$query_string;  
    }  
    location ~ \.php$ {  
        FastCGI_pass unix:/var/run/php/php8.1-fpm.sock;  
        fastcgi_index index.php;  
        fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;  
        include fastcgi_params;  
    }  
    location ~ /\.ht { deny all; }  
}  

启用站点并测试配置:

sudo ln -sf /etc/nginx/sites-available/myapp /etc/nginx/sites-enabled/  
sudo nginx -t && sudo systemctl reload nginx  

第四步:安全加固与生产就绪

  • 设置正确文件权限(避免 chmod 777):
    sudo chown -R www-data:www-data /var/www/myapp  
    sudo find /var/www/myapp -type f -exec chmod 644 {} \;  
    sudo find /var/www/myapp -type d -exec chmod 755 {} \;  
    sudo chmod 755 /var/www/myapp/storage /var/www/myapp/bootstrap/cache  
  • 启用 HTTPS(推荐 Certbot 自动签发):
    sudo apt install -y certbot Python3-certbot-nginx  
    sudo certbot --nginx -d your-domain.com  
  • 配置 Supervisor(保障队列与监听进程常驻):
    安装后创建 /etc/supervisor/conf.d/myapp-worker.conf管理 php artisan queue:workhorizon(若启用)。

最后验证:访问域名,应看到 Laravel 默认欢迎页;执行 php artisan tinker 测试环境连通性;检查日志 tail -f /var/log/nginx/error.log 排查异常。

小贴士:
✅ 云服务器务必关闭 root 远程登录,改用密钥认证
✅ 数据库连接建议通过 VPC 内网访问,禁止公网暴露;
定期备份 .env 和数据库,可结合云快照 + 自动脚本
✅ Laravel 日志默认写入 storage/logs,建议配合 logrotate 或 ELK 收集。

整个过程约 15 分钟即可完成基础部署,相比一键镜像或可视化面板,手动搭建虽需几步命令,却让你真正理解请求如何经由 Nginx → PHP-FPM → Laravel 内流转——这才是掌控线上应用的起点,当你的 Laravel 网站在云端稳定运行,那不仅是一次技术落地,更是工程能力的无声认证。