Windows XP下XAMPP 1.6.6服务器外网访问:自动获取公网IP方案咨询
解决Windows XP下XAMPP开放外网+获取公网IP的实用方案
嘿,我来帮你搞定这个问题!要让XP上的XAMPP对外开放测试,同时自动获取公网IP并分享,分几步来:
第一步:先搞定XAMPP的外网访问(端口映射必做)
光有公网IP没用,得让路由器把外网请求转到你的XP机器上:
- 先确认XAMPP的Apache正常运行,内网能通过
http://localhost访问 - 打开路由器管理后台(一般是
192.168.1.1或192.168.0.1,看路由器底部标签) - 找到「端口映射」或「虚拟服务器」选项,添加规则:
- 外部端口:80(如果ISP屏蔽80,就改成8080)
- 内部端口:和XAMPP Apache一致(默认80)
- 内部IP:你的XP机器内网IP(用
ipconfig查IPv4地址,比如192.168.1.100) - 协议选TCP,保存后路由器就会把外网请求转过来了
第二步:获取公网IP的两种靠谱方法
ipconfig只能看内网IP,下面两种方法能直接拿到公网IP:
方法一:用Windows脚本/命令行(无需浏览器,稳定)
XP自带的VBS脚本就能搞定,不用装额外工具:
- 新建文本文件,改名为
get_public_ip.vbs,粘贴以下代码:
Set objHTTP = CreateObject("MSXML2.XMLHTTP") objHTTP.Open "GET", "http://icanhazip.com", False objHTTP.Send() publicIP = Trim(objHTTP.ResponseText) ' 去掉换行符 ' 保存到txt文件 Set objFSO = CreateObject("Scripting.FileSystemObject") Set objTxtFile = objFSO.CreateTextFile("public_ip.txt", True) objTxtFile.WriteLine(publicIP) objTxtFile.Close ' 写入XAMPP的index.html(路径改成你实际的htdocs位置) Set objIndexFile = objFSO.OpenTextFile("C:\xampp\htdocs\index.html", 2, True) ' 2是覆盖模式,想追加就用8 objIndexFile.WriteLine("<html><body><h1>测试服务器公网IP</h1><p>" & publicIP & "</p></body></html>") objIndexFile.Close
- 双击运行这个VBS,立刻就能在当前目录生成
public_ip.txt,同时更新XAMPP的index.html。
如果能给XP装个兼容版的curl(老版本工具包能找到),也可以用命令行直接搞:
' 保存到txt curl icanhazip.com > C:\xampp\htdocs\ip.txt ' 生成单独的ip页面 echo "<html><body>公网IP:" > C:\xampp\htdocs\ip.html curl icanhazip.com >> C:\xampp\htdocs\ip.html echo "</body></html>" >> C:\xampp\htdocs\ip.html
方法二:用Chrome自动提取IP(适合依赖浏览器的场景)
如果想用Chrome自动搜索提取IP,可以用AutoHotkey的老版本(XP兼容)写个脚本:
- 装AutoHotkey v1.0.48.05(XP能用的版本)
- 新建
get_ip.ahk,粘贴代码:
Run, chrome.exe "https://www.google.com/search?q=what+is+my+ip+address" Sleep, 5000 ; 等页面加载,慢的话可以调大数值 Send, ^a^c ; 全选并复制页面内容 ClipWait, 2 if RegExMatch(Clipboard, "\b(?:\d{1,3}\.){3}\d{1,3}\b", matchIP) { FileAppend, %matchIP%, C:\xampp\htdocs\public_ip.txt MsgBox, IP已提取保存:%matchIP% } else { MsgBox, 没抓到IP,检查页面加载情况! }
运行脚本后,Chrome会自动打开搜索页,提取IP并保存。不过这个方法依赖Google搜索的页面布局,不如API方法稳定。
第三步:把IP文件托管到Google Drive
要让朋友通过Drive访问IP信息:
- 把生成的
ip.html或public_ip.txt上传到Google Drive - 右键文件→「共享」→设置为「任何人可查看」
- 复制共享链接,把格式改成直接访问:比如把
drive.google.com/file/d/XXX/view改成drive.google.com/uc?id=XXX,朋友打开这个链接就能直接看到IP内容了
重要提醒
- XP系统已经停更,安全性极差,测试完一定要关掉路由器的端口映射,别长期暴露公网
- 家庭宽带的公网IP大多是动态的,你可以把VBS脚本加到XP的「任务计划」里,定时运行更新IP文件
- 如果80端口被ISP屏蔽,就把XAMPP端口改成8080,路由器映射也同步改,朋友访问用
公网IP:8080
内容的提问来源于stack exchange,提问作者SuperMarioMC98
相关产品推荐
相关产品推荐

