我在 CentOS 7 虚拟机上遇到了一个奇怪的问题,但我不知道是什么原因造成的。
我在 Digital Ocean 上创建了虚拟机并进行了如下设置:
1) 修改/etc/hostname
为myhostname
2)修改/etc/hosts
后
127.0.0.1 localhost.localdomain localhost
127.0.0.1 localhost4.localdomain4 localhost4
123.456.789.123 myhostname.mydomainname.com myhostname
::1 localhost.localdomain localhost
::1 localhost6.localdomain6 localhost6
3)配置nginx进行反向代理
server {
listen 80;
server_name myhostname.mydomainname.com;
gzip on;
location / {
proxy_redirect off;
proxy_set_header Host $http_host;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://localhost:8080/;
}
}
就是这样。
然后我从https://tomcat.apache.org/并在我的(非root)用户的主目录中解压。
如果我运行它,startup.sh
它似乎可以正确启动,但是如果我尝试运行
wget http://localhost:8080/
它永远挂在那里……:\
SELinux 默认是禁用的,我没有重新启用它。
防火墙已配置,但我尝试禁用它,但没有成功。
Nginx 运行正常,没有问题。
我尝试了 Oracle 和 OpenJDK JVM。
知道这是什么原因造成的吗?
更新:输出sudo netstat -atnp|grep LISTEN
$ sudo netstat -atnp|grep LISTEN
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 10634/nginx: master
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1100/sshd
tcp 0 0 127.0.0.1:5432 0.0.0.0:* LISTEN 9645/postgres
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 1503/master
tcp6 0 0 :::8009 :::* LISTEN 12527/java
tcp6 0 0 :::8080 :::* LISTEN 12527/java
tcp6 0 0 :::80 :::* LISTEN 10634/nginx: master
tcp6 0 0 :::22 :::* LISTEN 1100/sshd
tcp6 0 0 ::1:5432 :::* LISTEN 9645/postgres
tcp6 0 0 ::1:25 :::* LISTEN 1503/master
更新2:我注意到 Tomcat 最终会激活,但需要几分钟时间。对于“vanilla”实例来说,这种行为并不正常。