域名解析是否生效需用dig/nslookup查权威dns结果,确认ip与服务器一致;换网络测试排除缓存;cdn需检查回源;防火墙和安全组要放行80/443;nginx server_name须严格匹配域名;证书续签失败会导致https中断。

域名解析是否真的生效了?别只看本地 ping
宝塔面板里加了域名,但浏览器打不开,第一反应常是“DNS没配好”——可很多人只在自己电脑上 ping 一下就下结论,这不可靠。本地 DNS 缓存、运营商劫持、甚至本机 hosts 文件都可能干扰判断。
- 用
dig example.com +short(Linux/macOS)或nslookup example.com(Windows)查权威解析结果,重点看返回的 IP 是否和你的服务器公网 IP 一致 - 换网络环境测试,比如用手机流量访问,排除本地 DNS 缓存问题
- 如果用了 CDN(如 Cloudflare),确认是否处于“代理模式”,此时 DNS 解析显示的是 CDN 节点 IP,不是你服务器的真实 IP,需在 CDN 后台检查回源设置
宝塔监听的端口被防火墙挡住了?80 和 443 不一定畅通
宝塔默认用 Nginx 监听 80 和 443,但系统防火墙(ufw、firewalld)或云服务商安全组可能没放行,导致请求根本到不了 Nginx。
- 执行
sudo ufw status或sudo firewall-cmd --list-ports查看当前开放端口,确认含80/tcp和443/tcp - 云服务器(阿里云、腾讯云等)必须单独配置安全组规则,仅开系统防火墙不够;安全组里要明确添加入方向的
80和443端口放行 - 宝塔面板里“安全”页面的防火墙开关只是控制宝塔自建规则,不影响系统级防火墙和云平台安全组,三者要分别检查
Nginx 配置里域名写错了?大小写、空格、泛域名都容易漏
宝塔会自动生成站点配置,但手动改过或从别处复制配置时,server_name 字段极易出错。Nginx 对域名匹配是严格字符串比对,不忽略空格、不自动补 www、也不支持通配符写法(如 *.example.com 需用正则)。
- 检查
/www/server/panel/vhost/nginx/example.com.conf中的server_name行,确保和实际访问的域名完全一致(包括www前缀) - 若需同时支持
example.com和www.example.com,写成server_name example.com www.example.com;,不能用逗号分隔 - 泛域名必须用正则:例如
server_name ~^([a-z0-9\-]+)\.example\.com$;,普通写法*.example.com在 Nginx 里无效
证书自动续期失败导致 HTTPS 访问中断?443 端口开着也不代表能用
很多用户发现 HTTP(80)能打开,HTTPS(443)打不开,或者提示证书错误。常见原因是 Let’s Encrypt 证书过期后自动续期失败,但 Nginx 仍尝试加载已失效的证书文件。
- 进宝塔“网站” → 点击对应站点 → “SSL” → 点“续签”,观察是否报错;常见失败原因:域名解析未生效、
.well-known目录权限不对、或被 CDN 拦截验证请求 - 手动检查证书路径:
/www/server/panel/vhost/cert/example.com/fullchain.pem和privkey.pem是否存在且非空 - 如果临时想先用 HTTP,可在 Nginx 配置中注释掉
listen 443 ssl块,避免因证书问题导致整个 server 块加载失败
真正卡住的往往不是单个环节,而是 DNS、防火墙、Nginx 配置、证书四个层叠在一起,某一层看似正常,实则悄悄断开了链路。挨个验证时,优先用命令行工具直连服务器查状态,少依赖图形界面反馈。










