操作系统:Ubuntu 12.04
我同时运行着 Apache 和 Nginx。Apache 监听的是 80 端口,因此我想让 Nginx 监听不同的端口,在本例中是 90 端口。
下面是配置/etc/nginx/sites-available/example.com
(是的,符号链接已创建):
server {
listen 90 default_server;
server_name www.example.com.pl;
root /var/www/example.com;
index index.html index.htm;
location / {
try_files $uri $uri/ /index.html;
}
}
我已经配置了防火墙并ufw status
显示:
To Action From
-- ------ ----
90 ALLOW Anywhere
...
我还在 iptables 中添加了规则:
Chain INPUT (policy DROP)
target prot opt source destination
ACCEPT tcp -- anywhere anywhere tcp dpt:90
...
演出nmap 12.34.567.89
:
Nmap scan report for www.example.com.pl (12.34.567.89)
Host is up (0.00046s latency).
Not shown: 991 closed ports
PORT STATE SERVICE
25/tcp open smtp
80/tcp open http
90/tcp open dnsix
...
下面是输出netstat -tulpn
:
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:90 0.0.0.0:* LISTEN 26902/nginx
...
index.html
包含<h1> Nginx TEST </h1>
,当我从服务器执行时wget www.example.com.pl:90
,我可以毫无问题地下载文件。但是,当我尝试telnet
从本地计算机访问 URL 时,它无法连接。当我www.example.com.pl:90
在浏览器中输入时,它显示ERR_CONNECTION_TIMED_OUT
。一切都表明端口 90 对外部连接关闭。这就是我迷路的地方。有什么想法或建议吗?
PS:请原谅,这是我的第一篇帖子 :)