迁移部署Wordpress网站,环境Ubuntu+Apache2+MySQL

原Wordpress部署在Windows下,迁移部署到Ubuntu18.04下,

新环境为Apache2,MySQL5.7,PHP7.0

ubuntu软件安装配置

https://www.cnblogs.com/Minstrel223/p/12306584.html

在root用户下操作,可以不使用sudo指令

首先更换ubuntu源,

vim /etc/apt/sources.list

比如使用清华源,将文件原有地址注释掉,加入以下内容:

deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse


更新

apt update
apt upgrade


Apache2的安装

apt install apache2
service apache2 start



验证:此时在浏览器地址栏输入你的IP便能看到Apache2的默认页面了。

MySQL的安装

apt-get install mysql-server
apt-get install mysql-client

卸载可以用:

apt-get --purge remove mysql-server


有的版本在安装过程中会提示你设置root用户的密码,有的默认空密码。

PHP的安装

apt install php

apt install libapache2-mod-php

apt install php-mysql


此时将 /var/www/html 下的 index.html 内容改为 

<?php phpinfo() ?>

验证:并将文件名改为 index.php 重启apache2便能通过访问IP地址查看php信息了。


MySQL数据的导入

数据安装完之后,要进行初始化

mysqld --initialize

否则后面操作会提示没有mysql.user等错误

有可能报错:

TIMESTAMP with implicit DEFAULT value is deprecated

打开my.cnf文件

vim /etc/mysql/my.cnf

在[mysqld] 下面增加一行

explicit_defaults_for_timestamp=true


之后,再次初始化。

登录数据库输入密码

mysql -uroot -p

在mysql>提示符后输入

退出mysql按ctrl+z

查看数据库

show databases;

注意末尾有半角;

选择某个数据库

use mysql;

删除某个数据库

drop database 数据库名;


查看表

show tables;

查看表的结构

desc  表名; 

查找自己的数据data在哪

show global variables like "%datadir%";


启动MySQL:

service mysql start


查看状态:

service mysql status


关闭MySQL:

service mysql stop


上传sql数据库,进入到导入:

mysql -uroot  -p   <  Dump20200607.sql


如果导入某个数据库,可以:

mysql -uroot -p

输入密码

create database  新数据库名  charset=utf8;


查看:

show  database;


ctrl+z  退出mysql模式

进入前面备份的mysql_dump_data.sql文件的目录下面

mysql -uroot  -p  新数据库名  <  Dump20200607.sql


完成备份和恢复.

检查是否恢复完成:

mysql -uroot -p
use 新数据库名 ;

show tables;


原文链接:https://blog.csdn.net/student241/article/details/80394092

MySQL8.0数据导入MySQL5.7出现的1273错误:

[ERR] 1273 - Unknown collation: 'utf8mb4_0900_ai_ci'

解决方法:
打开sql文件,将文件中的所有
utf8mb4_0900_ai_ci替换为utf8_general_ci
utf8mb4替换为utf8
保存后再次运行sql文件,运行成功

报错原因:
生成转储文件的数据库版本为8.0,要导入sql文件的数据库版本为5.6,因为是高版本导入到低版本,引起1273错误

apache2的配置

可以专门新建一个wordpress的配置文件,如:

vim /etc/apache2/sites-available/wordpress.conf

具体内容,可以根据以下进行修改

<VirtualHost *:80>

    ServerAdmin webmaster@localhost
    ServerName www.sakurablossom.cn #你的网站名
    ServerAlias sakurablossom.cn    #你的网站别名
    DocumentRoot /var/www/html #你的网站所在根目录
  <Directory /var/www/html>
    Allow from all
    Require all granted
  </Directory>

ErrorLog ${APACHE_LOG_DIR}
/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost>

启用

a2ensite wordpress.conf

停用用这个命令

a2dissite wordpress.conf

停止apache2服务

service apache2 stop

重载

systemctl reload apache2

重启服务

service apache2 restart


网站建设之wordpress整站的无损搬迁

以下内容改编自网络:

1、windows下可以安装MySQL客户端备份数据,结果为utf-8编码的文本文件,如图所示:

 
也可以用其他命令导出mysql数据库(.sql)

2、备份wordpress网站程序。直接将整个网站打包成zip到本地电脑备用。

3、数据处理。将sql数据中的网站名称www.oldwebsite.com,全部修改为新网站www.newwebsite.com名称。

4、安装MySQL,新建mysql数据库,导入老站的.sql的数据库备份文件。

5、将打包成zip的老站网页程序的压缩包,上传,并解压。

6、删除网站根目录下的wp数据库配置文件wp-config.php,然后在浏览器中输入网站域名访问,安装wordpress。

删除旧网站的配置文件wp-config,否则有可能页面显示不出来。

安装的时候,wp-config会重建

WordPress网站页面如果无法访问,开启apache2重写模块


https://www.weizhiyong.com/archives/2283

要配置文件中启用apache的Rewrite模块:
1、启用rewrite模块

在终端中执行

sudo a2enmod rewrite


指令后,即启用了 Mod_rewrite 模块。
另外,也可以通过将 /etc/apache2/mods-available/rewrite.load 连接到 /etc/apache2/mods-enabled/rewrite.load 来打开 Mod_rewrite 模块。用指令操作就是:

sudo ln -s /etc/apache2/mods-available/rewrite.load /etc/apache2/mods-enabled/r

还有一种说法是,反正我都试了:

Apache2 开启重写模式

复制 rewrite.load 文件到 mods-enabled 文件夹:

sudo cp /etc/apache2/mods-available/rewrite.load /etc/apache2/mods-enabled/rewrite.load


更改 mods-enabled/rewrite.load 文件权限:

chmod -R 775 rewrite.load


2 建立重写文件

在网站根目录下新建 .htaccess文件并把下面内容粘贴进去即可

    <IfModule mod_rewrite.c>
    Options +FollowSymlinks
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]
    </IfModule>

可能还需要修改配置文件apache2.conf

https://blog.csdn.net/zziahgf/article/details/80348744

apache2配置文件一般是 /etc/apache2/apache2.conf

vim /etc/apache2/apache2.conf


    更改如下部分的参数:
    更改前: AllowOverride None
    更改后: AllowOverride All

更改前:

<Directory />
        Options FollowSymLinks
        AllowOverride None
        Require all denied
</Directory>

<Directory /usr/share>
        AllowOverride None
        Require all granted
</Directory>

<Directory /var/www/>
        Options Indexes FollowSymLinks
        AllowOverride None
        Require all granted
</Directory>


更改后:

<Directory />
        Options FollowSymLinks
        AllowOverride All
        Require all denied
</Directory>

<Directory /usr/share>
        AllowOverride All
        Require all granted
</Directory>

<Directory /var/www/>
        Options Indexes FollowSymLinks
        AllowOverride All
        Require all granted
</Directory>


最后重启apache2

在终端输入 service apache2 restart

原文地址:https://www.cnblogs.com/yanghao2008/p/13063801.html