请在左侧选择域名查看配置
请上传证件照片进行身份验证
请在左侧选择域名查看配置
管理您的邮件网关站点配置
站点:
脚本: email.sh (v-)
请先 cd 到站点根目录再执行脚本
例如: cd /www/wwwroot/www.example.com
站点:
为您的邮箱域名配置邮件转发服务
使用邮件网关服务前,需在您的站点服务器上进行以下代码修改:
问题:服务只监听IPv6,PHPMailer使用IPv4连接失败
文件:/www/wwwroot/[您的站点]/app/mail/smtp_server.py
修改第123行:
# 修改前 controller = Controller(handler, port=1025) # 修改后 controller = Controller(handler, hostname='127.0.0.1', port=1025)
重启命令:
sudo pkill -f smtp_server.py cd /www/wwwroot/[您的站点]/app/mail && nohup python3 smtp_server.py &
说明:验证MX记录是否解析到邮件网关IP
文件:/www/wwwroot/[您的站点]/app/mail/controller/BaseAdminController.php
确认第62行配置正确:
// 确保网关IP配置正确 $serverIP = "119.28.31.218"; // 邮件网关 IP
注意:此函数检查您域名的MX记录目标主机是否解析到上述IP地址
问题:云服务器SMTP端口(25/465/587)出站被封禁,无法使用PHPMailer本地转发
解决:通过HTTP API调用代理服务器发信(走80/443端口,不受限制)
📁 需要修改的文件:
/www/wwwroot/[您的站点]/app/mail/controller/OutboxController.php
修改 send_mail() 方法(第83-175行)
⚠️ 重要:修改范围说明
✅ 保留第83-124行:函数定义、参数获取、非空校验、MX记录检查
❌ 删除第126-174行:整个 try { ... } catch 块(PHPMailer发送逻辑)
✅ 在第125行后插入:下方的HTTP API调用代码
需删除的代码(第126-174行):
try {
$mail->isSMTP();
$mail->Host = 'localhost';
$mail->Port = 1025;
// ... PHPMailer配置和发送逻辑 ...
$mail->send();
} catch (\Exception $e) {
return $this->fail('邮件发送失败'.$e->getMessage());
}
替换为以下代码(在第125行后插入):
// HTTP API 发送邮件
$apiData = [
'license_key' => '您的授权码', // ⚠️ 替换为实际授权码
'from_email' => $setFrom,
'from_name' => $post['send_mail'], // 发件人显示名称
'to_email' => $Address,
'subject' => $custom_subject,
'body' => $body
];
$ch = curl_init('https://gateway.mixi.email/api/send-mail');
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($apiData));
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type: application/json']);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_TIMEOUT, 30);
$response = curl_exec($ch);
curl_close($ch);
$result = json_decode($response, true);
if ($result && $result['success']) {
// 存表记录
Outbox::create([
'send_mail' => $setFrom,
'pikeup_mail' => $Address,
'title' => $custom_subject,
'content' => $body,
'tenant_id' => $this->userId,
'files' => json_encode($files, JSON_UNESCAPED_UNICODE)
]);
return $this->success('邮件发送成功', ['code' => 1]);
} else {
return $this->fail($result['message'] ?? '发送失败');
}
API返回:{"success": true, "message": "邮件发送成功"}
说明:一个站点可配置多个发件域名,每个域名对应一个授权码
📁 配置文件路径:
/www/wwwroot/[您的站点]/app/mail/config/license_config.php
配置格式:
<?php
return [
'您的域名1' => 'XXXX-XXXX-XXXX-XXXX', // 域名1 => 授权码1
'您的域名2' => 'YYYY-YYYY-YYYY-YYYY', // 域名2 => 授权码2
// 添加更多域名-授权码映射...
];
操作:编辑配置文件,添加您的域名和对应的授权码,保存即可生效
请输入一个未使用的授权码来绑定新域名(一个授权码只能绑定一个域名)
| 类型 | 主机记录 | 记录值 |
|---|---|---|
| MX | @ | mx.mixi.email (优先级10) |
| TXT | @ | v=spf1 ip4:119.28.31.218 ~all |
| TXT | _auth | v=auth1;key=[请先输入授权码];expires=有效期 |
查看邮件审核历史
管理您的授权码(未绑定域名的授权码)
以下授权码尚未绑定域名,可在"添加域名"时使用
以下授权码已绑定域名,可在"域名管理"中查看详情
快速了解如何配置和使用邮件转发服务
登录您的域名服务商后台,按照系统显示的配置添加以下记录:
| 记录类型 | 主机记录 | 记录值 |
|---|---|---|
| MX | @ | mx.mixi.email(优先级10) |
| TXT | @ | v=spf1 ip4:119.28.31.218 ~all |
| TXT | _auth | v=auth1;key=您的授权码;expires=有效期 |
扫码联系客服