Laravel应用部署Aruba主机出现Connection timed out问题求助
Laravel应用在Aruba主机上的数据库连接故障排查方案
问题背景
将Vue+Laravel应用部署在无终端访问权限的Aruba基础Linux主机上,此前曾成功连接数据库,但现在无法复现该状态。上传的test.php可正常连接数据库,但修改.env中DB_HOST为localhost或mysql.aruba.it均无效。
现有配置文件
.env文件内容
APP_NAME=Laravel APP_ENV=local APP_KEY=base64:ifOG0g1R9hF3I3F67Ubpui5mw3Qx8Ji5svBdVk4Dgqo= APP_DEBUG=true APP_URL=https://www.riverstudio.it/ LOG_CHANNEL=stack DB_CONNECTION=mysql DB_HOST=31.11.39.155 DB_PORT=3306 DB_DATABASE=database DB_USERNAME=username DB_PASSWORD=password
test.php文件内容
<?php $host = '31.11.39.155'; $port = '3306'; $dbname = 'database'; $username = 'username'; $password = 'password'; $dsn = "mysql:host=$host;port=$port;dbname=$dbname;charset=utf8mb4"; try { $pdo = new PDO($dsn, $username, $password); $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); echo "Database connection successful!"; } catch (PDOException $e) { echo "Database connection failed: " . $e->getMessage(); } ?>
解决步骤
1. 清除Laravel配置缓存
由于无终端权限,通过上传PHP文件执行缓存清理:
创建clear-cache.php文件,内容如下:
<?php require __DIR__.'/vendor/autoload.php'; $app = require_once __DIR__.'/bootstrap/app.php'; $kernel = $app->make(Illuminate\Contracts\Console\Kernel::class); $kernel->call('config:clear'); $kernel->call('cache:clear'); echo "配置缓存已清除"; ?>
上传至应用根目录,通过浏览器访问该文件完成缓存清理。Laravel会缓存配置文件,修改.env后若未清理缓存,仍会使用旧配置。
2. 检查.env文件的语法与编码
- 确保
.env中所有配置项的等号前后无多余空格(如DB_HOST = 31.11.39.155会导致读取失败) - 用纯文本编辑器(如Notepad++)将
.env保存为UTF-8无BOM格式后重新上传,BOM头会干扰Laravel的配置读取
3. 生成Laravel专属连接测试文件
创建laravel-db-test.php文件,内容如下:
<?php require __DIR__.'/vendor/autoload.php'; $app = require_once __DIR__.'/bootstrap/app.php'; use Illuminate\Support\Facades\DB; try { DB::connection()->getPdo(); echo "Laravel数据库连接成功!"; } catch (\Exception $e) { die("Laravel数据库连接失败: " . $e->getMessage()); } ?>
上传至根目录并访问,获取具体错误信息,定位故障原因(如驱动缺失、配置解析错误等)
4. 调整APP_ENV配置
将.env中的APP_ENV=local改为APP_ENV=production,清理缓存后测试连接。Local环境下部分配置逻辑可能与生产环境存在差异。
5. 确认数据库用户权限
虽然test.php可连接,但需确认数据库用户是否允许通过Laravel使用的连接方式访问(如是否限制了特定的客户端标识),可联系Aruba主机服务商确认数据库用户的权限范围。
内容的提问来源于stack exchange,提问作者Qasim Ali
相关产品推荐
相关产品推荐

