![套接字:NGINX Web 服务器上的连接被拒绝](https://linux22.com/image/578382/%E5%A5%97%E6%8E%A5%E5%AD%97%EF%BC%9ANGINX%20Web%20%E6%9C%8D%E5%8A%A1%E5%99%A8%E4%B8%8A%E7%9A%84%E8%BF%9E%E6%8E%A5%E8%A2%AB%E6%8B%92%E7%BB%9D.png)
我正在尝试NGINX
使用 Passenger 连接 Rails 项目的 Web 服务器。我检查了配置文件,并通过端口 883 连接到了网站。
这是我的配置文件如下:
http {
passenger_root /home/.rvm/gems/ruby-1.9.2-p290/gems/passenger-3.0.11;
passenger_ruby /home/.rvm/wrappers/ruby-1.9.2-p290/ruby;
server {
listen 883;
server_name www.example.com;
root /home/samples/public;
passenger_enabled on;
ssl on;
ssl_certificate /opt/nginx/conf/server.cert;
ssl_certificate_key /opt/nginx/conf/server.key;
location / {
root html;
index index.html index.htm;
}
}
NGINX
使用以下命令启动Web 服务器
sudo /etc/init.d/nginx start
Starting nginx: [ OK ]
sudo /etc/init.d/nginx status
nginx (pid 19575) is running...
现在NGINX
Web 服务器已启动,我输入以下命令来访问服务器连接
openssl s_client -connect https://www.example.com:883
但我得到了以下异常
socket: Connection refused
connect:errno=111
非常感谢您的帮助。
编辑 :-
@Shane Madden——感谢您的回复!
我尝试了您提到的更改。之后我重新启动了我的NGINX
网络服务器。
sudo /etc/init.d/nginx restart
Stopping nginx: [ OK ]
Starting nginx: [ OK ]
sudo /etc/init.d/nginx status
nginx (pid 29715) is running...
最后我用下面的命令检查
sudo openssl s_client -connect localhost:883
socket: Connection refused
connect:errno=111
sudo lsof -i
nginx 29715 root 6u IPv4 3840109 0t0 TCP *:http (LISTEN)
nginx 29717 nginx 6u IPv4 3840109 0t0 TCP *:http (LISTEN)
因此,更改您所说的步骤后没有任何区别。但我仍然得到相同的行为。
答案1
您正在尝试连接到公共 DNS 名称 - 这很容易导致结果不一致,具体取决于服务器是否实际绑定到公共地址或者是否涉及 NAT,名称是否在 hosts 文件中被覆盖.. 以及根据您的环境而定的任何其他复杂性。
验证 nginx 是否正确监听:
lsof -i
然后验证您是否可以连接到它没有涉及名称解析和公共寻址的复杂性:
openssl s_client -connect localhost:883
这是对在特定 SSL 端口上运行的服务进行的更加可控的测试 - 如果之后您仍然遇到问题,请根据您所看到的行为编辑您的问题。