getMessage() . "\n"; exit(1); } // 测试 Bucket 访问 echo "[4/5] 测试 Bucket 访问...\n"; try { $exists = $ossClient->doesBucketExist($oss_config['bucket']); if ($exists) { echo "✓ Bucket '{$oss_config['bucket']}' 存在且可访问\n\n"; } else { echo "✗ Bucket '{$oss_config['bucket']}' 不存在\n"; echo " 请检查 Bucket 名称是否正确\n"; exit(1); } } catch (Exception $e) { echo "✗ Bucket 访问测试失败\n"; echo " 错误信息: " . $e->getMessage() . "\n"; exit(1); } // 测试文件操作 echo "[5/5] 测试文件操作...\n"; $testFile = 'oss_test_' . time() . '.txt'; $testContent = 'OSS 连接测试 - ' . date('Y-m-d H:i:s'); try { // 上传测试文件 $ossClient->putObject($oss_config['bucket'], $testFile, $testContent); echo "✓ 文件上传成功\n"; // 读取测试文件 $content = $ossClient->getObject($oss_config['bucket'], $testFile); if ($content == $testContent) { echo "✓ 文件读取成功\n"; } else { echo "✗ 文件内容不匹配\n"; } // 删除测试文件 $ossClient->deleteObject($oss_config['bucket'], $testFile); echo "✓ 文件删除成功\n\n"; } catch (Exception $e) { echo "✗ 文件操作失败\n"; echo " 错误信息: " . $e->getMessage() . "\n"; exit(1); } // 显示配置摘要 echo "========================================\n"; echo "测试完成!所有测试通过\n"; echo "========================================\n\n"; echo "配置摘要:\n"; echo " OSS 状态: " . ($use_aliyun_oss ? '已启用' : '未启用') . "\n"; echo " Endpoint: {$oss_config['endpoint']}\n"; echo " Bucket: {$oss_config['bucket']}\n"; echo " 使用 HTTPS: " . ($oss_config['use_ssl'] ? '是' : '否') . "\n"; echo " 使用内网: " . ($oss_config['use_internal'] ? '是' : '否') . "\n"; if (!empty($oss_config['prefix'])) { echo " 路径前缀: {$oss_config['prefix']}\n"; } echo "\n"; echo "下一步:\n"; if (!$use_aliyun_oss) { echo " 在 config.php 中设置 \$use_aliyun_oss = true 以启用 OSS\n"; } echo " 访问 Tiny File Manager 开始使用\n"; echo "\n"; ?>