首页主机资讯Debian系统下Laravel测试环境如何搭建

Debian系统下Laravel测试环境如何搭建

时间2025-11-21 22:10:03发布访客分类主机资讯浏览407
导读:Debian下搭建可测试的 Laravel 环境 一 环境准备与安装 更新系统并安装基础工具 sudo apt update && sudo apt upgrade -y sudo apt install -y curl...

Debian下搭建可测试的 Laravel 环境

一 环境准备与安装

  • 更新系统并安装基础工具
    • sudo apt update & & sudo apt upgrade -y
    • sudo apt install -y curl wget unzip git software-properties-common apt-transport-https lsb-release ca-certificates
  • 安装 PHP 与常用扩展(以 PHP 8.2 为例,可按需调整版本)
    • 添加 Sury PHP 仓库并安装:
      • curl -sS https://packages.sury.org/php/apt.gpg | sudo gpg --dearmor | sudo tee /usr/share/keyrings/sury-php.gpg > /dev/null
      • echo “deb [signed-by=/usr/share/keyrings/sury-php.gpg] https://packages.sury.org/php/ $(lsb_release -sc) main” | sudo tee /etc/apt/sources.list.d/php.list > /dev/null
      • sudo apt update
      • sudo apt install -y php8.2 php8.2-cli php8.2-fpm php8.2-mysql php8.2-zip php8.2-gd php8.2-mbstring php8.2-curl php8.2-xml php8.2-bcmath php8.2-opcache
  • 安装 Composer
    • curl -sS https://getcomposer.org/installer | php
    • sudo mv composer.phar /usr/local/bin/composer
    • composer --version
  • 安装数据库(二选一)
    • MySQL:sudo apt install -y mysql-server
    • MariaDB:sudo apt install -y mariadb-server
    • 安全初始化:sudo mysql_secure_installation
  • 安装 Web 服务器(二选一)
    • Nginx:sudo apt install -y nginx
    • Apache:sudo apt install -y apache2 libapache2-mod-php8.2
  • 启动与开机自启
    • sudo systemctl enable --now php8.2-fpm nginx mysql

二 创建项目与数据库配置

  • 创建 Laravel 项目
    • 方式 A(推荐):composer create-project --prefer-dist laravel/laravel myapp
    • 方式 B(全局安装器):composer global require laravel/installer & & laravel new myapp
  • 配置数据库
    • 登录数据库并创建库与用户:
      • mysql -u root -p
      • CREATE DATABASE laravel_test CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
      • CREATE USER ‘laravel_user’@‘localhost’ IDENTIFIED BY ‘StrongPass!’;
      • GRANT ALL PRIVILEGES ON laravel_test.* TO ‘laravel_user’@‘localhost’;
      • FLUSH PRIVILEGES; EXIT;
  • 配置 .env
    • cp .env.example .env
    • 编辑 .env(示例):
      • APP_ENV=local
      • APP_DEBUG=true
      • APP_KEY=(执行 php artisan key:generate 自动生成)
      • DB_CONNECTION=mysql
      • DB_HOST=127.0.0.1
      • DB_PORT=3306
      • DB_DATABASE=laravel_test
      • DB_USERNAME=laravel_user
      • DB_PASSWORD=StrongPass!
  • 生成密钥与初始化数据
    • php artisan key:generate
    • php artisan migrate --seed(如需演示数据)

三 Web 服务器与权限

  • Nginx 配置示例(/etc/nginx/sites-available/myapp)
    • server { listen 80; server_name your_domain_or_ip; root /var/www/myapp/public; index index.php index.html; location / { try_files $uri $uri/ /index.php?$query_string; } location ~ .php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/var/run/php/php8.2-fpm.sock; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } location ~ /.ht { deny all; } }
    • 启用站点与检查
      • sudo ln -s /etc/nginx/sites-available/myapp /etc/nginx/sites-enabled
      • sudo nginx -t & & sudo systemctl reload nginx
  • Apache 配置要点(如选用)
    • 启用模块:sudo a2enmod rewrite
    • 虚拟主机 DocumentRoot 指向:/var/www/myapp/public
    • 配置 AllowOverride All 以启用 .htaccess
  • 文件权限(确保写入日志、缓存与会话)
    • sudo chown -R www-data:www-data /var/www/myapp
    • sudo chmod -R 755 /var/www/myapp
    • sudo chmod -R 775 /var/www/myapp/storage /var/www/myapp/bootstrap/cache

四 运行与执行测试

  • 运行应用
    • 浏览器访问:http://your_domain_or_ip
    • 或开发服务器:php artisan serve --host=0.0.0.0 --port=8000
  • 执行测试
    • 单元/功能测试:php artisan test 或 vendor/bin/phpunit
    • 并行测试(Laravel 9+):php artisan test --parallel
    • 性能基准示例:
      • use Illuminate\Support\Facades\Benchmark;
      • Benchmark::measure(‘Example’, fn() => User::count());
  • 测试环境配置建议(.env.testing 或运行时覆盖)
    • APP_ENV=testing
    • APP_DEBUG=true
    • DB_CONNECTION=mysql
    • DB_DATABASE=laravel_test
    • 说明:测试环境通常使用独立的测试数据库,避免污染开发/生产数据

五 常见问题与优化

  • 502 Bad Gateway / 找不到 PHP-FPM 套接字
    • 确认 PHP-FPM 正在运行:sudo systemctl status php8.2-fpm
    • 检查 Nginx fastcgi_pass 路径与 php-fpm 监听一致(如:/var/run/php/php8.2-fpm.sock)
  • 权限错误
    • storage、bootstrap/cache 必须对 www-data 可写
  • 类不存在或扩展缺失
    • 确认已安装所需扩展(如:mbstring、xml、curl、gd、zip、bcmath、pdo_mysql)
  • 性能与稳定性
    • 开启 OPcache(生产建议)
    • 路由/配置缓存:php artisan route:cache、php artisan config:cache(测试环境一般不启用)
  • 安全提示
    • 测试环境也应使用强数据库密码,避免将 .env 提交至版本控制
    • 对外服务建议启用 HTTPS(Let’s Encrypt)

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: Debian系统下Laravel测试环境如何搭建
本文地址: https://pptw.com/jishu/753760.html
Debian如何提升Laravel应用的响应速度 如何调试Linux下的copendir问题

游客 回复需填写必要信息