首次部署VPS及Tomcat后访问异常问题求助
别慌,第一次折腾VPS踩这些坑太正常了,我来帮你一步步梳理问题和解决办法:
首先拆解你遇到的两个核心错误:
1. 直接访问VPS IP出现ERR_EMPTY_RESPONSE
这个很好理解——Tomcat默认监听的是8080端口,而浏览器直接输入IP时,默认会访问80端口,你的80端口上没有运行任何服务(比如Apache或Nginx),自然就会返回“没有收到数据”的错误,这是正常现象,不用过度担心。
2. 访问myip:8080出现ERR_SSL_UNRECOGNIZED_NAME_ALERT
这个错误的关键原因是:你大概率在浏览器里输入了https://你的IP:8080,但Tomcat默认只提供HTTP服务,没有配置SSL证书,完全不支持HTTPS访问。浏览器强制用HTTPS协议去连接一个只懂HTTP的端口,就会触发SSL识别异常。
接下来给你几个关键的下一步操作:
先确认Tomcat是否真的在正常运行:
登录你的VPS,执行命令ps aux | grep tomcat,如果能看到Tomcat相关的进程,说明服务在运行;如果是用包管理器安装的Tomcat(比如apt/yum),可以用systemctl status tomcat查看状态,确保显示active (running)。检查防火墙和安全组是否开放8080端口:
这是新手最容易忽略的环节:- VPS本地防火墙:如果是Ubuntu/Debian系统,执行
ufw allow 8080开放端口;如果是CentOS/RHEL系统,执行firewall-cmd --add-port=8080/tcp --permanent,再执行firewall-cmd --reload生效。 - 云服务商安全组:不管是阿里云、AWS还是DigitalOcean,都有控制台层面的安全组规则,你需要进去添加入站规则,允许TCP 8080端口的外部流量访问。
- VPS本地防火墙:如果是Ubuntu/Debian系统,执行
正确访问Tomcat默认页面:
在浏览器里输入http://你的VPS IP:8080(重点:是http不是https),如果前面的步骤都没问题,应该就能看到Tomcat的默认欢迎页面了。关于托管多个网站的后续准备:
如果你想在Tomcat上托管多个网站,后续可以通过修改Tomcat的server.xml配置文件,添加多个<Host>节点来实现虚拟主机;更推荐的方式是搭配Nginx/Apache做反向代理,这样不仅可以用默认的80/443端口访问(不用加8080后缀),还能方便配置SSL证书、实现域名转发等功能,更适合生产环境。
备注:内容来源于stack exchange,提问作者LearningToProgram

