You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

NGINX配置HTTP跳转HTTPS不生效求助(使用LetsEncrypt SSL)

解决方案

  1. 删除冗余配置块
    你配置末尾没有listen指令的server块属于Certbot生成的冗余无效配置,直接删除整段即可,你配置顶部的80端口server块已经承担了HTTP跳转HTTPS的逻辑,这段重复配置会导致路由冲突。
    删除后保留的80端口配置就足够:
server {
    listen 80;
    listen [::]:80;
    server_name onsitecourse.com www.onsitecourse.com;
    return 301 https://www.onsitecourse.com$request_uri;
}
  1. 生效配置并验证语法
    修改完配置后执行以下命令检查配置语法是否正确:
nginx -t

返回test is successful后执行重载命令生效:

systemctl reload nginx
  1. 检查80端口连通性
  • 先在服务器本地执行命令确认Nginx已经监听80端口:
ss -tulpn | grep :80

如果没有返回Nginx监听80的记录,检查Nginx启动日志排查错误。

  • 检查防火墙规则:如果用ufw防火墙,执行ufw allow 80/tcp放行80端口;如果用firewalld,执行firewall-cmd --add-service=http --permanent && firewall-cmd --reload;云服务器还要登录云厂商控制台,确认安全组入方向规则开放了80端口的访问权限。
  1. 排查运营商端口封禁
    如果以上配置都正确,HTTP访问还是超时,大概率是服务器所在网络的运营商封禁了80端口:如果是国内服务器,需要完成ICP备案后向服务商申请解封80端口;如果是境外服务器,可以联系服务器商确认是否主动限制了80端口访问。

内容的提问来源于stack exchange,提问作者kabir das

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 21:06:02