网站很多时候是只绑定一个域名,但是也有一种情况,用户有多个域名需要同时绑定在同一个网站上,但是正常情况下WordPress只能对应一个域名,但是有时候我们希望可以通过多个域名访问网站。
例如,本站的地址是http://www.xmhudong.com/,但是我们希望IPv6用户可以通过另外的地址访问本站点,如/。
这就需要将WordPress绑定到多个域名上面,但是WordPress本身没有提供这样的功能。
其实可以通过修改WordPress的配置文件来实现这一目的。
修改方法如下:
打开WordPress目录下的wp-config.php文件,在里面添加下面这段内容:
- /* Enable multiple domains access. */
- $current_sitename= $_SERVER[‘HTTP_HOST’];
- if ($current_sitename == “www.xmhudong.com”) {
- define(“WP_SITEURL”, “http://www.xmhudong.com”);
- define(“WP_HOME”, “http://www.xmhudong.com”);
- } elseif ($current_sitename == “www.shejiku.net”) {
- define(“WP_SITEURL”, “http://www.shejiku.net”);
- define(“WP_HOME”, “http://www.shejiku.net”);
- }
—————————————————————————————————-
也可定义为不同文件夹以显示不同内容
- /* Enable multiple domains access. */
- $current_sitename= $_SERVER[‘HTTP_HOST’];
- if ($current_sitename == “www.guodaqing.com”) {
- define(“WP_SITEURL”, “http://www.guodaqing.com”);
- define(“WP_HOME”, “http://www.guodaqing.com”);
- } elseif ($current_sitename == “www.nzhe.net”) {
- define(“WP_SITEURL”, “/blog”);
- define(“WP_HOME”, “/blog”);
- }
注意上述代码需要添加在
- /** Sets up WordPress vars and included files. */
- require_once(ABSPATH . ‘wp-settings.php’);
的前面。
上面的这段代码根据HTTP请求中的参数修改了WP_SITEURL和WP_HOME常量,WordPress正是靠这两个常量来判断站点的地址。
由于配置文件中定义的常量具有较高的优先级,覆盖了数据库中定义的站点地址,因此就实现了多域名访问。