我设置了一个简单的 nginx 服务器,只要我localhost
在浏览器中输入,它就可以工作。如果我尝试通过同一网络中的手机访问它,输入我的电脑的 IP 地址,我会收到“网页不可用”消息。这是我的 nginx.conf:
user nginx;
worker_processes auto;
error_log /var/log/nginx/error.log;
pid /run/nginx.pid;
# Load dynamic modules. See /usr/share/nginx/README.fedora.
include /usr/share/nginx/modules/*.conf;
events {
worker_connections 1024;
}
http {
server {
listen 80;
location / {
root /usr/share/nginx/html;
}
}
}
根据这发布,我配置我的防火墙允许在家庭区域使用 http,并将无线网络设置为该区域。
iptables INPUT 链中的前两个条目是
Chain INPUT (policy ACCEPT)
target prot opt source destination
ACCEPT all -- anywhere anywhere ctstate RELATED,ESTABLISHED
ACCEPT all -- anywhere anywhere
所以我不认为这是问题所在。
然而,当我查看手机中 tcpdump 捕获的请求时,我看到了一条回复host unreachable - admin prohibited
:
21:13:38.514782 IP 192.168.1.3.54982 > sidney.http: Flags [S], seq 2569820651, win 14600, options [mss 1460,sackOK,TS val 3018406 ecr 0,nop,wscale 6], length 0
21:13:38.514934 IP sidney > 192.168.1.3: ICMP host sidney unreachable - admin prohibited, length 68
输出firewall-cmd --list-all --zone=home
:
home (active)
target: default
icmp-block-inversion: no
interfaces: wlo1
sources:
services: dhcpv6-client http mdns samba-client ssh
ports: 80/tcp
protocols:
masquerade: no
forward-ports:
sourceports:
icmp-blocks:
rich rules:
可能是什么问题?我在 Fedora 24 上。