为何iRedMail拦截Mattermost站点?子域页面被邮件登录页接管
问题解决:iRedMail登录页接管Mattermost子域页面
这个问题核心是Nginx的server块匹配逻辑错误,导致请求被路由到iRedMail配置,以下是具体排查和修复步骤:
1. 检查Nginx默认Server配置
iRedMail安装后会生成默认Nginx配置,若该配置以通配方式匹配所有未定义的域名,就会接管mm.example.com的请求:
- 进入Nginx站点配置目录:
cd /etc/nginx/sites-available/ - 打开默认配置文件(如
00-default.conf),找到监听443端口的server块,将server_name从通配符_改为仅匹配mail.example.com:server { listen 443 ssl; server_name mail.example.com; # 保留原有iRedMail相关配置 }
2. 确认Mattermost的Nginx配置有效性
- 检查Mattermost的站点配置文件(如
/etc/nginx/sites-available/mm.example.com.conf),确保关键配置正确:server { listen 443 ssl; server_name mm.example.com; # 指定mm.example.com专属SSL证书路径 ssl_certificate /path/to/mm.example.com.crt; ssl_certificate_key /path/to/mm.example.com.key; location / { proxy_pass http://localhost:8065; # 指向Mattermost服务端口 proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; } } - 创建软链接启用配置:
ln -sf /etc/nginx/sites-available/mm.example.com.conf /etc/nginx/sites-enabled/
3. 验证配置并重启Nginx
- 测试配置语法:
nginx -t,若提示test is successful则继续,否则根据错误提示修复配置。 - 重启Nginx服务:
systemctl restart nginx
4. 排查DNS与缓存问题
- 用
dig mm.example.com验证子域A记录是否指向VPS公网IP。 - 使用浏览器隐私窗口访问,或按
Ctrl+Shift+R强制刷新,避免旧缓存干扰。
内容的提问来源于stack exchange,提问作者Brian Cady
相关产品推荐
相关产品推荐

