您可以使用wp-config.php
要根据访问网站的位置更改网站url,请使用$_SERVER[\'REMOTE_ADDR\']
. 我的是这样的:
if ($_SERVER[\'REMOTE_ADDR\'] == \'127.0.0.1\' || $_SERVER[\'REMOTE_ADDR\'] == \'::1\') {
// accesing site from my local server
define(\'WP_SITEURL\', \'http://localhost/mysite/\');
define(\'WP_HOME\', \'http://localhost/mysite\');
} else if (strpos($_SERVER[\'REMOTE_ADDR\'],\'192.168.0.\') !== false) {
// accesing site from another machine in my home network,
// all their (internal) network addresses begin with this number;
// the next line provides the server\'s own internal network address
define(\'WP_SITEURL\', \'http://192.168.0.192/mysite/\');
define(\'WP_HOME\', \'http://192.168.0.192/mysite\');
} else { //accesing site from outside home
define(\'WP_SITEURL\', \'http://89.*.*.*/mysite/\'); //replace by your external home IP
define(\'WP_HOME\', \'http://89.*.*.*/mysite\');
}
//error_log("Siteurl is ".WP_SITEURL);
此技术还可以大大简化将站点上载到生产服务器的过程,或使站点的本地版本和生产版本保持同步。(虽然,很明显
wp-config.php
生产服务器上不应包含此代码。)
注意:由于某些原因,我无法使用家庭网络中其他机器的外部家庭IP;如果不是这样,您可以删除else if
, 只留下else
部分