我使用Ubuntu 16.04作为我的Web服务器和MySQL Server相当几年。它们都在同一服务器中,无论是在Docker容器中还是在服务中运行。为了更好的性能,我决定将它们分开到不同的层。我将使用GCP云SQL服务作为我的数据库图层。

在GCP计算机enginer中旋转另一个VM - >VM实例,使用Ubuntu 18.04模板创建一个新的VM实例。

安装PHP.

sudo apt update & apt upgrade & dist-upgrade
sudo apt install php-curl php-gd php-mbstring php-xml php-xmlrpc
sudo apt-get install php libapache2-mod-php

如果PHP页面缺少SQL扩展,则可能需要运行以下命令:

sudo apt-get install php7.2-mysql



获取WordPress

wget //wordpress.org/latest.tar.gz
sudo apt install apache2
cd /var/www
sudo tar xpf ~/latest.tar.gz
sudo chown -R www-data:www-data /var/www/wordpress

Apache配置

如果您的服务器上安装了Apache2,则yo你只需要为您的网站创建一个新的虚拟主机。首先复制默认配置或以前的配置,以修改主机WordPress。

sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/wordpress.conf
sudo vi /etc/apache2/sites-available/wordpress.conf

打开配置并修改 DocumentRoot 指出你解开的地方 wordpress directory.

DocumentRoot /var/www/wordpress

设定 ServerName 到您的网站域(或localhost或 公共IP地址 如果你只是在测试)。

ServerName 51sec.org

为此创建一个别名 www version too.

ServerAlias www.51sec.org

完成后,保存文件并退出。在Apache中启用您的网站。

$ sudo a2ensite wordpress.conf

重新加载Apache。

$ sudo systemctl reload apache2
Welcome to Ubuntu 18.04.2 LTS (GNU/Linux 4.15.0-1036-gcp x86_64)

 * Documentation:  //help.ubuntu.com
 * Management:     //landscape.canonical.com
 * Support:        //ubuntu.com/advantage

  System information as of Sat Jul 13 12:11:51 UTC 2019

  System load:  0.0               Processes:           106
  Usage of /:   17.9% of 9.52GB   Users logged in:     1
  Memory usage: 60%               IP address for ens4: 10.128.0.2
  Swap usage:   0%


 * Canonical Livepatch is available for installation.
   - Reduce system reboots and improve kernel security. Activate at:
     //ubuntu.com/livepatch

0 packages can be updated.
0 updates are security updates.


Last login: Sat Jul 13 01:53:27 2019 from 173.194.90.34
[email protected]:~$ cd /
[email protected]:/$ ls
bin   dev  home        initrd.img.old  lib64       media  opt   root  sbin  srv  tmp  var      vmlinuz.old
boot  etc  initrd.img  lib             lost+found  mnt    proc  run   snap  sys  usr  vmlinuz
[email protected]:/$ cd /etc/apache2/
[email protected]:/etc/apache2$ ls
apache2.conf    conf-enabled  magic           mods-enabled  sites-available
conf-available  envvars       mods-available  ports.conf    sites-enabled
[email protected]:/etc/apache2$ cd sites-available/
[email protected]:/etc/apache2/sites-available$ ls
000-default.conf  default-ssl.conf  wordpress.conf
[email protected]:/etc/apache2/sites-available$ vi wordpress.conf 
[email protected]:/etc/apache2/sites-available$ sudo a2enmod rewrite
Enabling module rewrite.
To activate the new configuration, you need to run:
  systemctl restart apache2
[email protected]:/etc/apache2/sites-available$ sudo service apache2 restart
[email protected]:/etc/apache2/sites-available$ sudo nano /etc/apache2/apache2.conf 
[email protected]:/etc/apache2/sites-available$ sudo service apache2 restart
[email protected]:/etc/apache2/sites-available$ 

从Ubuntu 16.04平台迁移WordPress到Ubuntu 18.04平台

我曾经使用一体化的WP迁移插件来将我的WP站点从一个服务器传输到另一台服务器。但这一次,在将备份文件导入新服务器时,我收到了一个问题。我认为它可能与PHP版本有关,因为新的Ubuntu 18.04使用PHP 7。

快速谷歌入网上,在使用一体化WP迁移时似乎有很多人获得此问题。它还向我带来了一个新的迁移工具 - 复制器。

它不是易于使用的,如一体化的WP迁移插件。但它做得很好。

步骤1.创建包
您可能有一些问题使用创建几个快照文件夹或TMP文件夹,以及为您/ var / www / html文件夹的写入权限。但是,您基本上可以手动创建文件夹并授予www-data:www-data to / var / www / html或您自己的WP文件夹,如/ var / www / wordpress

包站点远小于一体化插件,112MB与176MB。

步骤2.扫描
它将检查服务器设置,WordPress设置,文件大小和dabatase大小。我的数据库大小仅为43MB。但文件大小为174MB。

第3步。建立
它将将所有内容压缩到一个存档文件中。构建完成后,您将获取Installer.php和归档文件的下载链接。不要更改存档的文件名,因为它包含哈希值,文件名模式对于恢复过程很重要。

每个安装程序都是唯一的包。如果您遇到丢失安装程序文件,则archive.zip中有一个名为splecter-backup.php,它与原始安装程序相同。

步骤4.将步骤4文件上传到新服务器的文件夹,例如/ var / www / html。请确保您的新服务器WordPress文件夹/ var / www / html下没有其他文件。

如果您在现有的WordPress安装上恢复,则需要手动删除WP-Config.php文件。这是安全措施,以便您不会意外覆盖现有网站。

步骤5.启动安装程序脚本
In your browser, type the address of your website with /installer.php added at the enf of your site URL (http://35.21.134.251/installer.php).

如果有ziparchive和解压缩的问题,请运行以下两个命令并再次尝试:

  1. 输入以下命令以安装zip:
    sudo apt-get install zip
  2. 输入以下命令以安装Unzip:
    sudo apt-get install unzip

您可能还需要执行以下命令:

  1. sudo apt-get install php7.2-zip
  2. sudo systemctl restart apache2

不要忘记重新启动Apache2服务。

有一件事,您需要更改是为WordPress文件夹设置可写权限。

sudo chown -R www-data:www-data /var/www/wordpress

使用GCP云DB IP,现有数据库名称,用户名和密码连接到远程MySQL DB,您以前从GCP DB页面定义。

我们可能需要更改网站设置。通常我会使用URL的IP设置,直到所有测试,我都将从WP网站管理页面更改它们 - > Settings -> General Settings:

  • WordPress Address (URL) – http://35.21.134.251/
  • Site Address (URL) – http://35.21.134.251/

later, I will change both of them to http://140.238.157.42

步骤6.测试站点


您的新WP网站现在应该挂起并运行。但有一个问题。 yOU可能只能访问主页,但无法进入任何其他链接。这是因为 永久链接 not working.

在较新版本的Apache2中,您需要启用模块:
sudo a2enmod rewrite
sudo service apache2 restart
您可能还需要修改Apache2.conf文件。
sudo nano /etc/apache2/apache2.conf
更改您的Web目录覆盖规则 allowoverride所有.
<Directory /var/www/>
    Options Indexes FollowSymLinks
    AllowOverride All
    Require all granted
</Directory>
之后,再次重新启动服务。
sudo service apache2 restart


References:

经过 jonny.

发表评论