首页 > 网站 > Nginx > 正文

Nginx环境下WordPress的多站点功能配置详解

2024-08-30 12:24:44
字体:
来源:转载
供稿:网友

WordPress的多站点功能允许安装一个WordPress程序的情况下,实现多个站点(也就是一套程序,可以绑定多个域名或子域名)。

每个站点拥有独立的主题、插件、文章以及页面。

这样可以极大的减少了维护和更新多个WordPress安装程序的麻烦,

并且,每个站点之间又能够相互独立,互不影响。

WordPress multisite有两个方式:子目录和子域名,这里我们主要介绍子域名方式。

也就是说,在主域名的基础上,我们会创建一个子域名,例如:http://shop.jb51.com。

同时,我们可以映射这个子域名到一个一级域名如:http://shop.com,

对于访问者来说,访问的就是独立的一级域名。

1、准备

WordPress介绍其多站点功能页面:站点网络管理页面

接着,我们准备几个域名,如下:

站点一:www.jb51.com(主域名),这是安装WordPress时用的域名
站点二:blog.jb51.com,二级域名
站点三:news.com,映射的二级域名 news.jb51.com
站点四:shop.com,映射的二级域名 shop.jb51.com
注意:WordPress安装后请勿擅自在后台修改域名,即使是把有www改成无www,或者反过来,都有可能引起 redirected you too many times. 错误

然后,登录域名服务商的解析页面,把以上域名的A记录全部设置为WordPress安装的服务器IP。

也可以在本地电脑测试,可以直接修改hosts文件,加入下面1行:

127.0.0.1 www.jb51.com blog.jb51.com news.com shop.com

2、Nginx配置
在Nginx配置目录下创建新建一个配置文件,如下:

$ sudo vi /etc/nginx/conf.d/jb51.conf

内容为:

server {listen 80;server_name www.jb51.com blog.jb51.com news.com shop.com;root /usr/share/nginx/wordpress;index index.php;location / {try_files $uri $uri/ /index.php?$args ;}location ~ /favicon.ico {access_log off;log_not_found off;}location ~ /.php$ {try_files $uri /index.php;include fastcgi_params;fastcgi_pass 127.0.0.1:9000;fastcgi_index index.php;fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;}access_log /var/log/nginx/$host-access.log;error_log /var/log/nginx/wpms-error.log;}

这里我们使用$host变量可以让Nginx为每个域名生成独立的访问日志,

如:news.com-access.log 和 shop.com-access.log。

但是error日志不能用$host变量,所以所有的错误会记录在一个文件里面。

再重启Nginx服务器:

$ nginx -s reload

3、安装WordPress

按照WordPress正常安装步骤安装WordPress。

4、启用多站点功能

用文本编辑器打开 wp-config.php 文件,在注释:“/* 好了!请不要再继续编辑。请保存本文件。使用愉快! */”之前加上如下一行:

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表