其实自己的博客搭了有段时间了,但是由于自己不太确定是不是一定要用wd的框架,以及实验室公网服务器的不稳定,就一直荒废着。

今天偶然间看到了腾讯云对于学生的优惠活动,毕业之前每月只要8元的云服务器(就算是打一波广告吧),果断认证并申请了一台。

下面写一个详细的搭建和迁移教程,然后我会慢慢把cnblog的技术文迁移过来,并且也会常写一些心情随笔,毕竟还是想做一个生活丰富程序员。

环境介绍

Tencent cloud CentOS 7 x64, 无现成LAMP, 需自己安装配置。

一、下面是lamp详细的安装过程:

 

基于Linux的PHP环境搭建

可以先用命令查看系统是否安装了Apache(或者其他软件,不过估计都没有,是个裸机。。。)

rpm -qa | grep httpd

安装Apache、PHP、Mysql、连接Mysql数据库的包:

yum -y install httpd

yum -y install php

yum -y install php-fpm

yum -y install mysql

yum -y install mysql-server

yum -y install php-mysql

除了mysql-server其他都安装成功

错误:No package mysql-server available.

Package php-mysql-5.4.16-36.el7_1.x86_64 already installed and latest version

Nothing to do

查找原因是因为CentOS 7 版本将MySQL数据库软件从默认的程序列表中移除,用mariadb代替了,有两种解决方案,一是安装mariadb,二是从官网下载mysql-server.因为对mariadb不熟悉,所以我采用了第二种解决方案。

wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm

rpm -ivh mysql-community-release-el7-5.noarch.rpm

yum install mysql-community-server

然后需要确定,输入y回车即可

Is this ok[y/d/N]:y

接下来等待下载,需要确认的输入y回车即可

成功!

接下来安装常用扩展包

安装Apache扩展包

yum -y install httpd-manual mod_ssl mod_perl mod_auth_mysql

安装PHP扩展包

yum -y install php-gd php-xml php-mbstring php-ldap php-pear php-xmlrpc php-devel

安装Mysql扩展包

yum -y install mysql-connector-odbc mysql-devel libdbi-dbd-mysql

配置Apache、mysql开机启动

chkconfig httpd on

chkconfig mysqld on

系统会提示我们Centos7中命令已经改变

命令更改如下:

systemctl enable httpd.service
systemctl enable mysqld.service
systemctl list-unit-files  (centos6中是 chkconfig --list  用于查看启动列表)

重启Apache、mysql服务

/bin/systemctl restart  mysqld.service  (centos6 中为 service mysqld restart)

/bin/systemctl restart  php-fpm.service   同理替换 service php-fpm start

/bin/systemctl restart  httpd.service   同理替换service httpd restart

打开mysql

初次安装mysql是没有密码的

mysql –u root

show databases;  #注意分号

可重置密码

set password for 'root'@'localhost' =password('xxxxxxxx');

环境检查

netstat –tunlp

如下图,php监听9000端口,apache监听80端口,mysql监听3306端口

php测试环境是否成功

进入apache的web根目录:/var/www/html 中自己写一个最简单的php页面

cd /var/www/html

touch test.php

vi test.php

进入到了控制模式之后按键盘字母 i 进入到编辑模式,将如下代码输入到文件中

<?php

echo "<title>Test Page</title>";

phpinfo()

?>

按 esc 退出编辑模式,回到控制模式,输入 :wq 然后回车,在浏览器中输入服务器IP地址+php文件名,例:115.115.115.115/test.php

出现下图则成功。

最后再补上 安装git

yum -y install git
 
 
二、下面是恢复WordPress的详细过程:
 
首先是准备备份目录和数据库导出文件:就是一个wordpress工程包,一个.sql文件。

在本地打开终端,我这里用的是GitBash:

使用远程拷贝命令:

scp xiaoteng.sql root@123.206.104.236:~/myBlogFiles

然后输入密码即可。

同理拷贝打包文件:

scp xiaoteng.zip root@123.206.104.236:~/myBlogFiles

在云端解压:

tar -xvf  ...

这里其实可以直接远程拷贝文件夹到对应路径:

scp -r xiaoteng root@123.206.104.236:/var/www/html

下面在云端打开mysql命令行:

新建一个xiaoteng数据库:

mysql> create database xiaoteng;

导入数据文件xiaoteng.sql:

方法一:use xiaoteng,source ~/myBlogFiles/xiaoteng.sql

方法二:重定向命令  mysql -uroot -p*** xiaoteng< ~/myBlogFiles/xiaoteng.sql

这里因为之前端口配置原因,还要改一下xt_options表中的两个url字段,把端口号改成新的,这是wordpress框架内部实现跳转的url。这里因为只针对于我自己的特殊情况,不再细说。

算了还是说一下吧,也算给自己写的。。

用update命令改为自己的域名和端口(配置域名就真不说了)。(mysql> update xt_options set option_value='http://blog.xiaoteng.site' where option_id<3;)

然后还要提到的是更改httpd.conf这个apache的配置文件,将默认路径映射到xiaoteng这个目录下,座位网站的默认目录页。

不知道这个文件在哪可以用locate命令查找httpd.conf文件路径:

locate httpd.conf

结果发现报错了:

执行updatedb,等待一下再执行即可。

可以看到有两个,选择上面etc目录下的进行修改:

vim /etc/httpd/conf/httpd.conf

找到DocumentRoot 改为,保存退出。

然后呢,就是打开一个浏览器,当然 配好域名后,在哪都可以,访问blog.xiaoteng.site ,成功打开主页。

最后还有些其他问题:

比如上传图片的时候说目录没有写权限,给了777还是不行,然后想远程登录mysql数据库改一下表。

又发现远程数据库只允许localhost访问。

这里再改一下mysql中user表的host项从"localhost"改称"%"

mysql -u root -pvmwaremysql>use mysql;

mysql>update user set host = '%' where user = 'root';

mysql>select host, user from user;

之后其实发现并不是数据库的事,还是目录权限的问题

仅仅chmod 777 xiaoteng 是不行的

而要把内部所有的子目录和文件都加上权限,我这里的命令是:

chmod -R 777 xiaoteng/wp-content

然后就可以上传了~

Centos7.2 搭建Lamp服务器以及迁移WordPress个人博客详细过程的更多相关文章

  1. Centos7下搭建LAMP环境,安装wordpress(不会生产博客,只是一名博客搬运工)(菜鸟)

    1.搭建MySQL数据库 安装MariaDB yum install mariadb-server -y 启动MySQL服务 emctl start mariadb #启动服务 emtcl enabl ...

  2. Git+Hexo搭建个人博客详细过程

    通过Git+Hexo搭建的个人博客地址:https://liangh.top/ 1.安装Node.js.配置好Node.js环境.安装Git和配置好Git环境,打开cmd命令行,成功界面如下 2.安装 ...

  3. CentOS 7 yum安装LAMP,LNMP并搭建WordPress个人博客网站

    本次实验要进行的是在CentOS7.2,内核版本3.10.0-327.el7.x86_64的环境下搭建LAMP和LNMP,并在此之上做一个WordPress博客网站. [root@Shining ~] ...

  4. LNMP小项目搭建,Centos7.6环境搭建Linux+nginx+mysql+php,wordpress个人博客的搭建(完整搭建步骤)

    一.LNMP搭建,基于nginx服务器搭建wordpress个人博客 准备环境:centos7.6环境下web服务器(nginx+php):主机名:web01,ip:192.168.248.172my ...

  5. Android手机用KSWEB搭建Web服务器成功安装WordPress

    之前部落分享的几个免费Web服务器软件都是用来安装在本地电脑上,搭建Apache.PhpMyAdmin.MySQL等网站运行环境,然后我们就可以在电脑上测试运行Wordpress.Discuz! 论坛 ...

  6. Ubuntu 搭建 LAMP 服务器

    /******************************************************************** * Ubuntu 搭建 LAMP 服务器 * 说明: * 想 ...

  7. Centos搭建 LAMP 服务器教程

    搭建 LAMP 服务 搭建 MySQL 数据库 安装 MySQL 使用 yum 安装 MySQL: yum install mysql-server -y 安装完成后,启动 MySQL 服务: ser ...

  8. Debian 8.9 搭建wordpress个人博客

    想自己搭个博客玩玩,就搭建了此博客,过程可谓艰辛啊! 先在阿里云买了个  轻量应用服务器 1个月10块钱,好贵.... 用 windows sever 下载不了phpstudy,也不知道怎么回事... ...

  9. 基于Ubuntu 搭建 WordPress 个人博客 - 开发者实验室 - 腾讯云

    1.准备 LAMP 环境 安装 Apache2 在终端输入该命令 ,使用 apt-get 安装 Apache2: sudo apt-get install apache2 -y 安装好后,您可以通过访 ...

随机推荐

  1. Kafka基本知识回顾及复制

    Producers发布记录到集群,集群维护这些记录并且将记录分发给Consumers. 在Kafka中,最关键的抽象是topic.Producers发布记录到一个topic,Consumers订阅一个 ...

  2. SDN第一次作业

    作业链接 你会选择作 网络编程 方向的程序员吗?为什么? 光凭阅读此篇文章我还无法确定以后是否选择作 网络编程 方向的程序员.出于自身知识的匮乏,文章中提到的很多东西都没有概念,全篇一口气阅读下来,给 ...

  3. QT开发应用程序的欢迎界面

    主界面启动太慢,通常要10秒以上,所以想加个欢迎界面,等程序加载好再显示主界面. 主界面(类名为MainWindow)启动慢的原因是构造函数需要执行大量初始化的工作. 创建了Welcome类作为欢迎界 ...

  4. Netty基础点滴

    编写一个应答服务器 编写一个应答服务器 写一个Netty服务器主要由两部分组成: 配置服务器功能,如线程.端口 实现服务器处理程序,它包含业务逻辑,决定当有一个请求连接或接收数据时该做什么 启动服务器 ...

  5. 一个 rsync同步文件脚本

    #/bin/bash cd /root/phone echo "update guanwang phone version" git pull ]; then echo " ...

  6. 解决CXF的java.io.FileNotFoundException: class path resource [META-INF/cxf/cxf-extension-soap.xml] cannot be opened because it does not exist

    以下是错误信息 九月 25, 2017 8:22:04 下午 org.springframework.web.context.support.XmlWebApplicationContext prep ...

  7. linux shell 和linux 命令的区别?windows shell 和 windows 命令呢?

    shell翻译成壳的意思,它是包裹在linux内核外层的,一个可通过一系列的linux命令对操作系统发出相关指令的人机界面. shell可以通过其条件语句和循环语句等,把一系列linux命令结合在一起 ...

  8. 理解 Git

    Git 如何保存文件 其它版本管理系统通常会保存所有文件及其历次提交的差异(diff / revision),通过 merge 原始文件与各阶段的差异就能获取任何版本的状态 而 Git 保存的是每一次 ...

  9. Fabric单节点安装备忘

    安装文档:http://www.cnblogs.com/studyzy/p/7437157.html 安装上面的文档安装成功,但是过程中遇到一些问题. 一.go的源码包可能下载不下来,因为被墙,go官 ...

  10. HashMap并发导致死循环 CurrentHashMap

    为何出现死循环简要说明 HashMap闭环的详细原因 cocurrentHashMap的底层机制 为何出现死循环简要说明 HashMap是非线程安全的,在并发场景中如果不保持足够的同步,就有可能在执行 ...