介绍
WordPress是一个流行的CMS(内容管理系统),可以帮助您快速,轻松地让您的网站离开地面。 有时,您需要在同一台服务器上托管多个不相关的网站。
本指南将介绍如何在一个VPS上托管两个单独的WordPress实例。 他们每个都有自己的域名。 这是从不同的设置多点 。
我们将通过使用虚拟主机来实现这一点。 本指南将使用Ubuntu 12.04 VPS服务器,但其他发行版应该以类似的方式运行。
先决条件
本指南有一些要求,我们在其他一些文章中深入讨论。 在开始之前,请确保您已完成以下操作:
- 创建一个新的DigitalOcean VPS来托管您的WordPress网站。 完成初始服务器配置按照本指南操作。
- 使用DigitalOcean设置两个域名。 使用本指南来学习如何建立域名与DigitalOcean 。
- Ubuntu上安装一个LAMP组合使用本指南。
在这一点上,你应该在Ubuntu上安装LAMP,并且两个域名都应该指向你的Droplet。
通过在Web浏览器中访问您的域名,确保是这种情况。 这两个域应该给你相同的默认Apache索引页面:
如果您的域不通向此页面,那么您需要等待DNS更改传播,或者您在前面的步骤中配置错误。 在此问题解决之前,请不要继续。
下载Wordpress
准备好后,登录到服务器并更改到主目录。 我们将在这里下载文件:
cd wget http://wordpress.org/latest.tar.gz
通过发出以下命令解压缩并解压缩归档文件:
tar xzvf latest.tar.gz
创建站点数据库和用户
在我们继续之前,我们需要为MySQL中的每个站点配置一个独立的数据库和用户。 这将确保站点数据是独立的。
为了本指南的目的,我们将使用以下信息:
网站名称 | firstsite.com | secondsite.com |
---|---|---|
数据库名称 | FirstDatabase | 第二数据库 |
数据库用户 | 首先 | 第二人 |
数据库密码 | FirstPassword | 第二个密码 |
上面的表提供了我们将使用的命令的上下文。 在填写后面的命令时,请替换您自己的信息。
使用您在MySQL安装期间配置的管理员帐户登录MySQL:
mysql -u root -p
将提示您输入MySQL root密码,然后您将被删除到MySQL提示符。
使用以下命令创建两个数据库:
CREATE DATABASE FirstDatabase; CREATE DATABASE SecondDatabase;
创建将与每个数据库关联的用户:
CREATE USER FirstUser@localhost; CREATE USER SecondUser@localhost;
接下来,为每个帐户设置密码访问权限:
SET PASSWORD FOR FirstUser@localhost= PASSWORD("FirstPassword"); SET PASSWORD FOR SecondUser@localhost= PASSWORD("SecondPassword");
通过向新用户授予权限来完成。 这将数据库用户与其各自的数据库相关联,并向其授予适当的权限:
GRANT ALL PRIVILEGES ON FirstDatabase.* TO FirstUser@localhost IDENTIFIED BY 'FirstPassword'; GRANT ALL PRIVILEGES ON SecondDatabase.* TO SecondUser@localhost IDENTIFIED BY 'SecondPassword';
刷新MySQL的特权信息以实现更改:
FLUSH PRIVILEGES;
退出MySQL返回shell会话:
exit
配置站点根目录
我们将在服务器的Web根目录中的单个目录中安装这两个站点。
切换到“/ var / www /”目录:
cd /var/www
为我们的每个网站创建一个目录。 这些将存储网站文件:
sudo mkdir FirstSite sudo mkdir SecondSite
在将Web内容移动到我们的文件夹之前复制示例配置:
cp ~/wordpress/wp-config-sample.php ~/wordpress/wp-config.php
最后,将文件复制到您在服务器的Web根目录下创建的目录:
sudo rsync -avP ~/wordpress/ /var/www/FirstSite/ sudo rsync -avP ~/wordpress/ /var/www/SecondSite/
将目录的所有权授予Apache Web用户,然后将您的linux用户名添加到Web组:
sudo chown www-data:www-data * -R sudo usermod -a -G www-data linux_user_name
WordPress配置
我们将为每个网站配置我们网站的信息。
第一站点配置
将目录更改为第一个网站的文档根目录:
cd /var/www/FirstSite
打开WordPress配置文件进行编辑:
sudo nano wp-config.php
找到包含以下字段的部分,并替换第一个网站的数据库,用户名和密码:
// ** MySQL settings - You can get this info from your web host ** // /** The name of the database for WordPress */ define('DB_NAME', 'FirstDatabase'); /** MySQL database username */ define('DB_USER', 'FirstUser'); /** MySQL database password */ define('DB_PASSWORD', 'FirstPassword');
保存并退出。
第二站点配置
将目录更改为第二个站点的文档根目录:
cd /var/www/SecondSite
打开WordPress配置文件进行编辑:
sudo nano wp-config.php
找到您为上一个网站编辑的相同部分。 这次您将输入第二个网站的信息。
// ** MySQL settings - You can get this info from your web host ** // /** The name of the database for WordPress */ define('DB_NAME', 'SecondDatabase'); /** MySQL database username */ define('DB_USER', 'SecondUser'); /** MySQL database password */ define('DB_PASSWORD', 'SecondPassword');
保存并退出。
Apache虚拟主机配置
我们需要配置Apache以将流量从每个域导向到各自的目录。 我们将为每个域创建单独的虚拟主机文件。
将目录更改为Apache的可用网站目录:
cd /etc/apache2/sites-available
通过复制默认虚拟主机文件为每个站点创建新的虚拟主机文件:
sudo cp default FirstSite sudo cp default SecondSite
第一站点虚拟主机配置
打开您复制的第一个文件以配置第一个站点的虚拟主机:
sudo nano FirstSite
更改文件中的信息以匹配以下内容。 请记住用红色信息替换您的第一个网站:
<VirtualHost *:80> ServerAdmin your_email_address ServerName firstsite.com ServerAlias www.firstsite.com DocumentRoot /var/www/FirstSite <Directory /> Options FollowSymLinks AllowOverride None </Directory> <Directory /var/www/FirstSite> Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny allow from all </Directory> . . . . . .
如果需要启用漂亮的固定链接,可以将“<Directory / var / www / FirstSite>”框中的“AllowOverride None”更改为“AllowOverride All”。 您可以了解更多有关的漂亮永久链接的要求在这里。
进行更改后,保存并关闭文件。
第二站点虚拟主机配置
打开第二个虚拟主机文件进行编辑:
sudo nano SecondSite
更改信息以反映您的第二个网站的信息:
<VirtualHost *:80> ServerAdmin your_email_address ServerName secondsite.com ServerAlias www.secondsite.com DocumentRoot /var/www/SecondSite <Directory /> Options FollowSymLinks AllowOverride None </Directory> <Directory /var/www/SecondSite> Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny allow from all </Directory> . . . . . .
保存并关闭文件。
最终配置
还有几个必要的步骤,使我们的网站工作。
首先,WordPress需要一个额外的PHP模块安装才能正常运行。 通过键入以下内容安装:
sudo apt-get install php5-gd
接下来,通过键入以下命令来启用我们创建的虚拟主机文件:
sudo a2ensite FirstSite sudo a2ensite SecondSite
最后,重新加载Apache,以便它读取我们的更改:
sudo service apache2 reload
查看结果
为了看到您的新的WordPress网站,只需导航到您的域名在网络浏览器。
如果您已正确配置了所有内容,则应该看到如下所示的页面:
您现在可以单独登录和配置每个站点。 这些站点是完全独立的,可以像两个完全不同的VPS服务器上存在一样进行管理。