使用WordPress在本地搭建的网站实现公网无端口访问需要解决以下两个问题:
一,家庭宽带无公网IP。
二,家庭宽带有公网IP也无法使用网页默认80/443端口,或者使用Frp、Zerotier、NPS/NPC等内网穿透工具访问内网网页都需要附带端口。
本教程以群辉NAS设置为例,并提前完成以下两项准备工作:
- 一个域名
- 将域名托管到Cloudflare
创建Tunnels(隧道)
打开Cloudfalre控制台,左侧菜单Zero Trust。

选择Cloudflared。

隧道名称根据自己需求随便填一个,然后保存隧道。

这个界面是各个平台连接器的下载界面,这个可以先不用管,直接下一步。


参考图中举例进行填写,划重点
子域:如果要用二级域名可填写,用主域名就空着,比如想用abc.bloogle.top访问,就填abc。
域:就是你的域名,直接下拉箭头选择
路径:不用填
类型:内网服务的协议,一般是http。
URL:内网服务的ip+端口。
注意:此处如果你同我一样是要访问内网的WordPress博客,需要提前在WordPress的设置内修改“WordPress地址”和“站点地址”为要使用的域名(参考下图),因为WordPress有访问限制,修改后内网可能无法访问,如需再次修改WordPress后台又无法进入,可直接访问数据库修改相应条目,别问我怎么知道的。
HTTP主机头:填写域名,与上方域相同。

设置并保存后为(下方一图),这里参考图是因为我添加了两个二级域名所以有两行,相应的回到域名的DNS记录页面(下方二图),会看到已经自动添加了两个CNAME记录,并且开启了代理,这里什么都不要动。


设置完成Cloudflared后,为了能用https访问网址还需要打开两个设置。
回到cloudflare页面,点开你的域名,左侧选择SSL/TLS-边缘证书,打开下图两项:“始终使用HTTPS”和“自动 HTTPS 重写”,到这里Cloudfalre的设置就全部完成了。

本地主机安装连接器
这里可以回到自己创建的Tunnels(隧道)页面,根据自己所使用的平台下载安装连接器。
我使用的是群晖NAS,这里我选择了一个第三方的套件,可视化安装相对简单。首先要给群晖套件中心添加一个套件来源。地址:https://packages.synocommunity.com

在套件中心内找到Cloudflared Tunnel。

在隧道页面复制下方令牌,这里需要处理一下,页面显示的是一段命令,我们只需要这段命令后边的令牌:ey…………….。

将复制的令牌粘贴到群晖安装Cloudflared Tunnel套件弹出的以下界面。

下一步后,两个勾选框无特殊要求不要勾选,下方IP类型我建议是选择auto,v4也可以,v6基本是无法连接。


安装完成后就可以域名直接访问内网WordPress网站了。
