首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計疑難解答

Windows Server 2012 IIS 發布網站:域名訪問外網不通解決方案

     編輯:程式設計疑難解答

問題現象

阿里雲服務器 Windows Server 2012,IIS 發布網站:

  • IP + 端口訪問正常。
  • 綁定域名後,服務器本地訪問正常。
  • 外網機器無法通過域名訪問。

根因分析

  1. DNS 解析未生效:域名未正確解析到服務器公網 IP。
  2. 防火墻/安全組阻攔:服務器防火牆或阿里雲安全組未放行 HTTP(80)/HTTPS(443) 端口。
  3. IIS 站點綁定缺失:未在 IIS 添加域名主機頭綁定。
  4. 端口轉發/映射缺失:若服務器在內網,需路由器/NAT 映射公網端口。

排查步驟與解決

1. 驗證 DNS 解析


# 本地/外網機器執行
nslookup yourdomain.com
# 應返回服務器公網 IP
ping yourdomain.com
# 應能通(若允許 ICMP)

未生效 → 域名服務商控制台添加 A 記錄指向公網 IP,等待 TTL 生效。

2. 配置阿里雲安全組

  • 入方向:允許 TCP 80、443(或自定義端口),授權對象 0.0.0.0/0。
  • 出方向:通常默認全放行。

3. 配置 Windows 防火牆


# PowerShell 管理員運行
New-NetFirewallRule -DisplayName "Allow HTTP" -Direction Inbound -Protocol TCP -LocalPort 80 -Action Allow
New-NetFirewallRule -DisplayName "Allow HTTPS" -Direction Inbound -Protocol TCP -LocalPort 443 -Action Allow

4. IIS 站點綁定域名

IIS 管理器 → 站點 → 右鍵「編輯繫結」→ 添加:

  • 類型:http/https
  • IP 地址:全部未分配
  • 端口:80/443
  • 主機名:yourdomain.com(必填)

5. 內網服務器端口映射(如適用)

路由器/網關配置 DNAT:公網 IP:80 → 內網服務器 IP:80。

驗證清單

  • [ ] 域名解析正確
  • [ ] 安全組放行端口
  • [ ] 系統防火牆放行
  • [ ] IIS 綁定主機名
  • [ ] 應用程序池運行正常
  • [ ] 外網瀏覽器訪問成功

逐項排查,通常在 DNS 或安全組/防火牆環節發現問題。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved