WordPress网站如何实现内网通过IP访问呢而外网通过域名访问

之前在内部服务器搭建了一个WordPress网站,测试时使用的时Localhost,在内网上线时,将主机地址改为服务器的ip地址,即10.xxx.xxx.xxx。显然这种情况下,外网是不能访问的。

WordPress默认使用的是绝对路径,也就是说文章和图片的地址都是10.xxx.xxx.xxx/…。除此之外,js和css的路径也是绝对的。这样即使外网通过外网ip访问到了网站,内容和样式都是无法加载的。

首先想到的一个方法就是在WP后台或者数据库中将SiteURL改为外网的ip地址。但是这种方法相对暴力,也不利于扩展多域名/ip的指向。

在网上搜到了一个方法,具体如下:

在wp-config.php文件中加入以下两行代码:

比如我的网站是http://www.zhongwei.li,在家IP访问路径为http://10.10.1.178/wordpress/,这两句应该改为:

这样无论你是从内网还是外网访问,主机和链接地址都是随之动态改变的。

至于文章中的图片和链接,还需要改成相对路径,如/?p=xxx和/wp-uploads/…等。

最后一步,也是网上很多经验贴没有说明的,就是清除缓存。我按照上述步骤完成之后,多次测试都没有成功,外网访问时有些地址还是显示内网ip。删去了wp-config.php中的define( 'WP_CACHE', true );就好了。

版权所有 未经授权不得转载
球盖网 » WordPress网站如何实现内网通过IP访问呢而外网通过域名访问

发表评论

提供最优质的资源集合

关于本站 联系我们