用LAMP+Wordpress搭建自己的博客---超详细

                    用LAMP+Wordpress搭建博客

                                                                                                            ----高手一出手就是规范!!!

前言

因为之前用LNMP+wordpress搭建博客已经进行了很多次了,感觉原理已经掌握的还算可以了,就萌生了用LAMP+wordpress搭建一个博客。这个想法是在2018-5-4号出现的。5.5-5.6号正好是个星期六,星期天,于是我集两天时间,将这个想法完成。

这篇博文应该是写的还算详细,主要原因是我想给学弟看以下运维中最基本的一个服务是什么样子的,激发一下他们的学习兴趣。

太多的运维初级人员,眼高手低,总是看不起最基础的命令部分,还有一些人坐不住冷板凳,心比天高,总觉得看一下就会,没必要反复敲,重复敲。我觉得抱着这种心态的人员可以趁早的选择放弃运维,我觉得这种心态必将一事无成!

这篇博客讲的是最基础的一些内容,仅仅是用LAMP+Wordpress搭建出了一个博客而已,没有进行服务优化,比如数据库的分离,NFS的挂载,数据的备份,邮件的发送等等等。

未来还有多远,时间还有多少,前景又是怎样,不免心生焦炉,付出会成正比,一步一步走来,扬起漫天的尘埃!!!

环境准备

部署服务之前或接手一台linux主机之前必看内容

[root@web02 ~]# uname -m    
#《==查看主机的硬件架构名称
x86_64  
[root@web02 ~]# uname -r    
#《查看内核发行号
2.6.32-573.el6.x86_64  
[root@web02 ~]# cat /etc/system-release  
#《==操作系统版本
CentOS release 6.7 (Final)
[root@web02 ~]# ip a | grep eth0  
#《==查看IP
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    inet 10.0.0.7/24 brd 10.0.0.255 scope global eth0
[root@web02 ~]# hostname    
#《==查看主机名
web02

服务系统版本号

Apache 2.4.29+Php5.3.27+Mysql5.5.54+Wordpress-4.9.4  #《==本次博客所需的lamp+wordpress版本

Apache服务

部署apache服务前的环境准备

[root@web02 ~]# wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-6.repo
#安装epel源,为后续的yum仓增加软件包数量。
[root@web02 ~]# yum repolist
#显示已配置的仓库
root@web02 ~]# yum install zlib zlib-devel -y
#向系统中安装软件包
[root@web02 ~]# mkdir /home/oldboy/tools
#创建外来软件包存放目录
[root@web02 ~]# cd /home/oldboy/tools
#切换目录

部署apache服务

[root@web02 tools]# wget https://mirrors.tuna.tsinghua.edu.cn/apache/httpd/httpd-2.4.29.tar.gz
#wget:非交互式的网络文件下载工具
[root@web02 tools]# tar -xf httpd-2.4.29.tar.gz 
#解压
[root@web02 tools]# cd httpd-2.4.29
[root@web02 httpd-2.4.32]# less INSTALL
[root@web02 httpd-2.4.32]# less README
[root@web02 httpd-2.4.29]# ./configure --prefix=/application/apache2.4.29 \--enable-deflate \--enable-expires \--enable-headers \--enable-modules=most \--enable-so \--with-mpm=worker \--enable-rewrite 
#这一步一般用来生成 Makefile,为下一步的编译做准备,你可以通过在 configure 后加上参数来对安装进行控制,比如代码:./configure –prefix=/usr 意思是将该软件安装在 /usr 下面,执行文件就会安装在 /usr/bin (而不是默认的 /usr/local/bin),资源文件就会安装在 /usr/share(而不是默认的/usr/local/share)。同时一些软件的配置文件你可以通过指定 –sys-config= 参数进行设定。有一些软件还可以加上 –with、–enable、–without、–disable 等等参数对编译加以控制,你可以通过允许 ./configure –help 察看详细的说明帮助。
......
checking for APR... no
configure: error: APR not found.  Please read the documentation.   
# 安装新版本的httpd软件会报以上错误,由于下载的软件版本过高,需要支持的apr系列软件版本也高,这里最好是编译安装apr软件,yum安装的时候版本一般是apr1.3.9,而此apache版本需要至少apr1.4.0及以上。下载以下三种软件包,然后编译安装,最后编译安装httpd就可以了
[root@web02 httpd-2.4.29]# cd ..
[root@web02 tools]# wget http://archive.apache.org/dist/apr/apr-1.4.5.tar.gz 
[root@web02 tools]# wget http://archive.apache.org/dist/apr/apr-util-1.5.1.tar.gz 
[root@web02 tools]# wget http://jaist.dl.sourceforge.net/project/pcre/pcre/8.30/pcre-8.30.tar.gz
[root@web02 tools]# tar -xf apr-1.4.5.tar.gz 
#压缩或解压缩
[root@web02 tools]# cd apr-1.4.5
[root@web02 apr-1.4.5]# ./configure --prefix=/usr/local/apr
[root@web02 apr-1.4.5]# make && make install
#make 编译  make install 安装
[root@web02 apr-1.4.5]# cd ..
[root@web02 tools]# tar -xf apr-util-1.5.1.tar.gz 
[root@web02 tools]# cd apr-util-1.5.1
[root@web02 apr-util-1.5.1]# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/bin/apr-1-config 
[root@web02 apr-util-1.5.1]# make && make install
[root@web02 apr-util-1.5.1]# cd ..
[root@web02 tools]# tar xf  pcre-8.30.tar.gz
[root@web02 tools]# cd pcre-8.30
[root@web02 pcre-8.30]# ./configure --prefix=/usr/local/pcre
[root@web02 pcre-8.30]# make && make install
[root@web02 pcre-8.30]# cd ..
# 继续编译安装httpd软件
[root@web02 tools]# cd httpd-2.4.29
[root@web02 httpd-2.4.29]# ./configure --prefix=/application/apache2.4.29 --enable-deflate --enable-expires --enable-headers --enable-modules=most --enable-so --with-mpm=worker --enable-rewrite --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-pcre=/usr/local/pcre
[root@web02 httpd-2.4.29]# make && make install
[root@web02 httpd-2.4.29]# ln -s /application/apache2.4.29/ /application/apache
#设置符号(软)连接,以后的服务升级更容易   经验所得!!!
[root@web02 httpd-2.4.29]# ll /application/apache
lrwxrwxrwx 1 root root 26 Mar 26 13:30 /application/apache -> /application/apache2.4.29/
[root@web02 tools]# ls /application/apache
bin  build  cgi-bin  conf  error  htdocs  icons  include  logs  man  manual  modules
[root@web02 httpd-2.4.29]# ll /application/apache/htdocs/
总用量 4
-rw-r--r-- 1 root root 45 6月  12 2007 index.html
[root@web02 httpd-2.4.29]# cd /application/apache/htdocs/
[root@web02 htdocs]# mkdir bbs www blog
#创建 bbs www blog 这三个目录 对应域名 存放.html文件 可以检验后面的实验
[root@web02 htdocs]# cd ../conf/
[root@web02 conf]# ll
总用量 104
drwxr-xr-x 2 root root  4096 5月   5 15:03 extra
-rw-r--r-- 1 root root 18358 5月   5 15:03 httpd.conf
-rw-r--r-- 1 root root 13077 5月   5 15:03 magic
-rw-r--r-- 1 root root 60847 5月   5 15:03 mime.types
drwxr-xr-x 3 root root  4096 5月   5 15:03 original
[root@web02 conf]# ls extra/    
#根据Apache里的extra可以延伸到Nginx
httpd-autoindex.conf  httpd-mpm.conf
httpd-dav.conf        httpd-multilang-errordoc.conf
httpd-default.conf    httpd-ssl.conf
httpd-info.conf       httpd-userdir.conf
httpd-languages.conf  httpd-vhosts.conf
httpd-manual.conf     proxy-html.conf
[root@web02 conf]# cp /application/apache/conf/extra/httpd-vhosts.conf{,.bak}
#拷贝 懂? 经验 动配置文件之前先拷贝!!!
[root@web02 conf]# vim httpd.conf
#主配置文件  进行修改
193 ServerName 127.0.0.1:80
476 Include conf/extra/httpd-vhosts.conf 

基于域名的虚拟主机

[root@web02 conf]# vim /application/apache/conf/extra/httpd-vhosts.conf 
#  /application/apache/conf/extra/httpd-vhosts.conf ==》 虚拟主机配置文件
#将源文件里的内容全删修改为以下内容
<VirtualHost *:80>
    ServerAdmin [email protected] 
DocumentRoot "/application/apache2.4.29/htdocs/www"    
#www.etiantian.org
    ServerName www.etiantian.org
    ServerAlias etiantian.org
    ErrorLog "logs/www-error_log"
    CustomLog "logs/bbs-access_log" common
</VirtualHost>
#
<VirtualHost *:80>
    ServerAdmin [email protected]
DocumentRoot "/application/apache2.4.29/htdocs/bbs"
#bbs.etiantian.org
    ServerName bbs.etiantian.org
    ErrorLog "logs/bbs-error_log"
    CustomLog "logs/bbs-access_log" common
</VirtualHost>
#
<VirtualHost *:80>
    ServerAdmin [email protected]
DocumentRoot "/application/apache2.4.29/htdocs/blog"
#blog.etiantian.org
    ServerName blog.etiantian.org
    ErrorLog "logs/blog-error_log"
    CustomLog "logs/blog-access_log" common
</VirtualHost>
[root@web02 conf]# ../bin/apachectl -t
Syntax OK
[root@web02 conf]# ../bin/apachectl start
#启动Apache
[root@web02 conf]# ../bin/apachectl graceful  
# 优雅重启  相当于nginx服务中的reload
#配置hosts
[root@web02 conf]# vim /etc/hosts
172.16.1.7    web02 www.etiantian.org etiantian.org blog.etiant
ian.org bbs.etiantian.org
[root@web02 conf]# cd ../htdocs/bbs/
[root@web02 bbs]# ll
总用量 0   没有文件 会列出目录 
#测试  1   linux 上测试
[root@web02 bbs]# curl www.etiantian.org
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<html>
 <head>
  <title>Index of /</title>
 </head>
 <body>
<h1>Index of /</h1>
<ul></ul>
</body></html>
[root@web02 bbs]# vim /application/apache/conf/httpd.conf 
231  # Options Indexes FollowSymLinks  
#注释掉  不让列出目录
[root@web02 bbs]# /application/apache/bin/apachectl graceful
[root@web02 bbs]# curl www.etiantian.org
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>403 Forbidden</title>   没有首页 (其中之一)
</head><body>
<h1>Forbidden</h1>
<p>You don't have permission to access /
on this server.<br />
</p>
</body></html>
[root@web02 bbs]# cd ../
[root@web02 htdocs]# tree
.
├── bbs
├── blog
├── index.html
└── www

3 directories, 1 file
[root@web02 htdocs]# echo 'apache www' >www/index.html
#注意 这里用到了回显命令和输出
[root@web02 htdocs]# echo 'apache bbs' >bbs/index.html
[root@web02 htdocs]# echo 'apache blog' >blog/index.html
[root@web02 htdocs]# tree
#以树状形式 显示出当前目录下的文件
.
├── bbs
│   └── index.html
├── blog
│   └── index.html
├── index.html
└── www
    └── index.html

3 directories, 4 files
[root@web02 htdocs]# curl www.etiantian.org
apache www
[root@web02 htdocs]# curl blog.etiantian.org
apache blog
[root@web02 htdocs]# curl bbs.etiantian.org
apache bbs
[root@web02 htdocs]# grep www.etiantian.org /etc/hosts
172.16.1.7    web02 www.etiantian.org etiantian.org blog.etiantian.org bbs.etiantian.org

测试 2 windows上测试
先做IP 域名解析
Win键+r -> drivers -> etc -> hosts(第一个)->10.0.0.7 www.etiantian.org etiantian.org blog.etiantian.org bbs.etiantian.org(写入hosts文件) 保存退出 ->在浏览器上 输入域名->看结果

Php服务

部署php服务之前的环境准备

yum install -y zlib-devel libxm12-devel libjpeg-devel libiconv-devel freetype-devel libpng-devel gd-devel curl-devel libxslt-devel libmcrypt-devel mhash mhash-devel mcrypt libxslt-devel
cd /home/oldboy/tools
wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.14.tar.gz
tar -zxf libiconv-1.14.tar.gz
cd libiconv-1.14
./configure --prefix=/usr/local/libiconv
make && make install
echo $?

部署php服务

[root@web02 ~]# cd /home/oldboy/tools/
[root@web02 tools]# wget http://mirrors.sohu.com/php/php-5.3.27.tar.gz
[root@web02 tools]# tar xf php-5.3.27.tar.gz 
[root@web02 tools]# cd php-5.3.27
[root@web02 php-5.3.27]# ./configure --prefix=/application/php5.3.27 --with-apxs2=/application/apache/bin/apxs --with-mysql=mysqlnd --with-pdo-mysql=mysqlnd --with-iconv-dir=/usr/local/libiconv --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --disable-rpath --enable-bcmath --enable-shmop --enable-sysvsen --enable-inline-optimization --with-curl --enable-mbregex --enable-mbstring --with-mcrypt --with-gd --enable-gd-native-ttf --with-mhash --enable-pcntl --enable-sockets --with-xmlrpc --enable-soap --enable-short-tags --enable-static --with-xsl --enable-ftp
[root@web02 php-5.3.27]# echo $?
0
[root@web02 php-5.3.27]# make && make install
[root@web02 php-5.3.27]# echo $?
0
[root@web02 php-5.3.27]# cp php.ini-production /application/php/lib/php.ini
[root@web02 php-5.3.27]# cd ..
[root@web02 tools]# ln -s /application/php5.3.27/ /application/php
[root@web02 tools]# ls /application/php
bin  etc  include  lib  man

Apachephp实现整合

[root@web02 tools]# ls /application/apache/modules/
httpd.exp                   libphp5.so 
[root@web02 tools]# grep libphp5.so /application/apache/conf/httpd.conf
LoadModule php5_module        modules/libphp5.so
[root@web02 php-5.3.27]# cd /application/apache/conf/
[root@web02 conf]# vim httpd.conf
390 AddType application/x-httpd-php.php.phtml
391 AddType application/x-httpd-php-source.phps
251 <IfModule dir_module>
252     DirectoryIndex index.php index.html
253 </IfModule>
[root@web02 conf]# ../bin/apachectl -t
AH00526: Syntax error on line 391 of /application/apache2.4.29/conf/httpd.conf:
AddType requires at least two arguments, a mime type followed by one or more file extensions
[root@web02 conf]#!vim
390     AddType application/x-httpd-php .php .phtml
391     AddType application/x-httpd-php-source .phps
[root@web02 conf]# ../bin/apachectl -t
Syntax OK
[root@web02 conf]# ../bin/apachectl graceful
[root@web02 conf]# vim /application/apache/conf/httpd.conf
165 User www
166 Group www
[root@web02 conf]# useradd -u 513 -s /sbin/nologin www
[root@web02 conf]# id www
uid=513(www) gid=513(www) 组=513(www)
[root@web02 conf]# /application/apache/bin/apachectl -t
Syntax OK
[root@web02 conf]# /application/apache/bin/apachectl graceful
[root@web02 conf]# cd ../htdocs/bbs/
[root@web02 bbs]# ll
总用量 4
-rw-r--r-- 1 root root 11 5月   5 21:06 index.html
[root@web02 bbs]# echo "<?php phpinfo(); ?>" >test_info.php

       

Mysql服务

部署mysql服务

[root@web02 tools]# wget http://mirrors.sohu.com/mysql/MySQL-5.5/mysql-5.5.54-linux2.6-x86_64.tar.gz
# 获取mysql-5.5.54的二进制包
[root@web02 tools]# wget http://mirrors.sohu.com/mysql/MySQL-5.5/mysql-5.5.54-linux2.6-x86_64.tar.gz.md5
# 下载mysql-5.5.54的md5文件,校验是否有误
[root@web02 tools]# cat mysql-5.5.54-linux2.6-x86_64.tar.gz.md5 
cfdc6bbd88e58c6207ffa290bad531b1  mysql-5.5.54-linux2.6-x86_64.tar.gz
[root@web02 tools]# md5sum -c mysql-5.5.54-linux2.6-x86_64.tar.gz.md5
mysql-5.5.54-linux2.6-x86_64.tar.gz: 确定
[root@web02 tools]# useradd mysql -s /sbin/nologin -M
# 创建mysql用户
[root@web02 tools]# id mysql
uid=514(mysql) gid=514(mysql) 组=514(mysql)
[root@web02 tools]#  tar -xf mysql-5.5.54-linux2.6-x86_64.tar.gz
# 解压mysql二进制包,需要稍等一会,文件略大
[root@web02 tools]# mv mysql-5.5.54-linux2.6-x86_64 /application/mysql-5.5.54
[root@web02 tools]# ln -s /application/mysql-5.5.54/ /application/mysql
[root@web02 tools]# ls /application/mysql
bin      docs            lib         README   sql-bench
COPYING  include         man         scripts  support-files
data     INSTALL-BINARY  mysql-test  share
# 初始化数据库
[root@web02 tools]# cd /application/mysql/
[root@web02 mysql]# chown -R mysql.mysql /application/mysql/
[root@web02 mysql]# ./scripts/mysql_install_db --basedir=/application/mysql --datadir=/application/mysql/data/ --user=mysql
Installing MySQL system tables...
180506 16:18:38 [Note] Ignoring --secure-file-priv value as server is running with --bootstrap.
180506 16:18:38 [Note] /application/mysql/bin/mysqld (mysqld 5.5.54) starting as process 115108 ...
OK
Filling help tables...
180506 16:18:39 [Note] Ignoring --secure-file-priv value as server is running with --bootstrap.
180506 16:18:39 [Note] /application/mysql/bin/mysqld (mysqld 5.5.54) starting as process 115115 ...
OK
......
# 出现以上这两个ok即代表已经安装成功
# 注意/tmp目录权限必须为1777,hosts文件也要做解析,否则在初始化安装的时候会报错
[root@web02 mysql]# ll -d /tmp/
drwxrwxrwt. 4 root root 4096 5月   6 16:18 /tmp/
[root@web02 mysql]# cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
172.16.1.5    lb01
172.16.1.6    lb02
172.16.1.7    web02 www.etiantian.org etiantian.org blog.etiantian.org bbs.etiantian.org
172.16.1.8    web01
172.16.1.51   db01  db01.etiantian.org
172.16.1.31    nfs01
172.16.1.41    backup
172.16.1.61    m01
# 由于我们安装的目录是/application/,而系统默认的安装目录是/usr/bin/,故需修改启动文件中的
[root@web02 mysql]# cd bin/
[root@web02 bin]#  sed 's#/usr/local/#/application/#g' mysqld_safe |grep application 
if echo '/application/mysql/share' | grep '^/application/mysql' > /dev/null
  relpkgdata=`echo '/application/mysql/share' | sed -e 's,^/application/mysql,,' -e 's,^/,,' -e 's,^,./,'`
  relpkgdata='/application/mysql/share'
  MY_PWD='/application/mysql'
  MY_BASEDIR_VERSION='/application/mysql'
  ledir='/application/mysql/bin'
  DATADIR=/application/mysql/data
elif test -x /application/mysql/bin/my_print_defaults
  print_defaults="/application/mysql/bin/my_print_defaults"
elif test -x /application/mysql/bin/mysql_print_defaults
  print_defaults="/application/mysql/bin/mysql_print_defaults"
    plugin_dir='/application/mysql/lib/plugin'
[root@web02 bin]# sed -i 's#/usr/local/#/application/#g' mysqld_safe
[root@web02 bin]# cd ..
[root@web02 mysql]# cp support-files/my-small.cnf /etc/my.cnf
cp:是否覆盖"/etc/my.cnf"? y
# 启动
[root@web02 mysql]#  /application/mysql/bin/mysqld_safe --user=mysql &
[1] 115133
[root@web02 mysql]# Logging to '/application/mysql/data/web02.err'.
180506 16:22:14 mysqld_safe Starting mysqld daemon with databases from /application/mysql/data
^C
# 可能会报以下错误,只需创建/var/lib/mysql目录即可
[root@web02 mysql]# mkdir /var/lib/mysql
[root@web02 mysql]# /application/mysql/bin/mysqld_safe --user=mysql &
[2] 115374
[root@web02 mysql]# 180506 16:22:40 mysqld_safe Logging to '/application/mysql/data/web02.err'.
180506 16:22:41 mysqld_safe A mysqld process already exists

[2]+  Exit 1                  /application/mysql/bin/mysqld_safe --user=mysql
[root@web02 mysql]# lsof -i :3306
COMMAND    PID  USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
mysqld  115356 mysql   10u  IPv4 213713      0t0  TCP *:mysql (LISTEN)
# 发现3306端口已经被监听,服务已启动
# 登录mysql测试
[root@web02 mysql]# /application/mysql/bin/mysql
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.5.54 MySQL Community Server (GPL)

Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> exit    # 到此已经安装成功
Bye
# 增加/application/mysql/bin:到环境变量中,并永久生效
[root@web02 mysql]# echo "PATH="/application/mysql/bin:$PATH"" >>/etc/profile
[root@web02 mysql]# tail -1 /etc/profile
PATH=/application/mysql/bin:/application/mysql/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
[root@web02 mysql]# echo $PATH
/application/mysql/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
# 这里需要注意,全局路径配置一定要放在前面,否则会出现错误。
# 由于全局路径配置不当导致的问题案例http://blog.51cto.com/oldboy/1122867

#或者是直接把/application/mysql/bin/目录给拷贝到/usr/local/sbin/目录下
cp -a /application/mysql/bin/* /usr/local/sbin/

# 启动mysql的时候需要/application/mysql/bin/mysqld_safe,修改一下配置文件,直接/etc/init.d/mysqld start 即可
[root@web02 mysql]# sed 's#/usr/local/#/application/#g' support-files/mysql.server |grep application
# If you install MySQL on some other places than /application/mysql, then you
  basedir=/application/mysql
  bindir=/application/mysql/bin
    datadir=/application/mysql/data
  sbindir=/application/mysql/bin
  libexecdir=/application/mysql/bin
[root@web02 mysql]# sed -i 's#/usr/local/#/application/#g' support-files/mysql.server
[root@web02 mysql]#  cp support-files/mysql.server /etc/init.d/mysqld
[root@web02 mysql]# chmod +x /etc/init.d/mysqld
[root@web02 mysql]# /etc/init.d/mysqld stop
Shutting down MySQL.180506 16:28:30 mysqld_safe mysqld from pid file /application/mysql/data/web02.pid ended
 SUCCESS! 
[1]+  Done                    /application/mysql/bin/mysqld_safe --user=mysql
[root@web02 mysql]# lsof -i :3306
# 查看3306端口是否已经停用
[root@web02 mysql]# /etc/init.d/mysqld start
Starting MySQL.. SUCCESS! 
[root@web02 mysql]# lsof -i :3306
COMMAND    PID  USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
mysqld  115858 mysql   10u  IPv4 214782      0t0  TCP *:mysql (LISTEN)
# 添加至开机自启动
[root@web02 mysql]#  chkconfig --add mysqld
[root@web02 mysql]# chkconfig mysqld on
[root@web02 mysql]# chkconfig --list mysqld
mysqld         	0:关闭	1:关闭	2:启用	3:启用	4:启用	5:启用6:关闭
[root@web02 mysql]# tail -10 /application/mysql/data/web02.err
180506 16:28:51 InnoDB: Completed initialization of buffer pool
180506 16:28:51 InnoDB: highest supported file format is Barracuda.
180506 16:28:51  InnoDB: Waiting for the background threads to start
180506 16:28:52 InnoDB: 5.5.54 started; log sequence number 1595675
180506 16:28:52 [Note] Server hostname (bind-address): '0.0.0.0'; port: 3306
180506 16:28:52 [Note]   - '0.0.0.0' resolves to '0.0.0.0';
180506 16:28:52 [Note] Server socket created on IP: '0.0.0.0'.
180506 16:28:52 [Note] Event Scheduler: Loaded 0 events
180506 16:28:52 [Note] /application/mysql/bin/mysqld: ready for connections.
Version: '5.5.54'  socket: '/tmp/mysql.sock'  port: 3306  MySQL Community Server (GPL)
[root@web02 mysql]# mysqladmin -u root password 'oldboy123'     #当root密码为空时设置
[root@web02 mysql]# mysqladmin -u root -h web01 password 'oldboy123' #当root密码不为空时设置root密码需要加-h选项来指定主机名。
[root@web02 mysql]# mysqladmin -u root -p oldboy123 password '123456' #也可在已知root密码情况下更改root密码
#登陆方法
[root@web02 mysql]# mysql -uroot -p   
Enter password: 
[root@web02 mysql]# mysql -uroot -poldboy123

测试mysql服务与apache服务的连接性

[root@web02 bbs]# vim test_mysql.php 
  
<?php
    $link_id=mysql_connect('localhost','root','oldboy123') or mysql_error();
    if($link_id){
        echo "Mysql successful by lk !";
    }else{
        echo mysql_error();
    }
?>

                            

博客搭建

创建wordpress数据库

# 先登录mysql,创建WordPress所需要的数据库
[root@web02 bbs]# mysql -uroot -poldboy123
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| test               |
+--------------------+
4 rows in set (0.11 sec)

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| test               |
+--------------------+
4 rows in set (0.00 sec)

mysql> create database wordpress; 
Query OK, 1 row affected (0.00 sec)

mysql> show databases;  #显示数据库
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| test               |
| wordpress          |
+--------------------+
5 rows in set (0.00 sec)

mysql> drop database test;   # 删除多余的test数据库
Query OK, 0 rows affected (0.04 sec)

mysql> select user();
+----------------+
| user()         |
+----------------+
| root@localhost |
+----------------+
1 row in set (0.00 sec)

mysql> select user,host from mysql.user;
+------+-----------+
| user | host      |
+------+-----------+
| root | 127.0.0.1 |
| root | ::1       |
|      | localhost |
| root | localhost |
|      | web02     |
| root | web02     |
+------+-----------+
6 rows in set (0.00 sec)
mysql> drop user "root"@"::1";
Query OK, 0 rows affected (0.00 sec)

mysql> drop user ""@"localhost";
Query OK, 0 rows affected (0.00 sec)

mysql> drop user ""@"web02";
Query OK, 0 rows affected (0.00 sec)
mysql> select user,host from mysql.user;
+------+-----------+
| user | host      |
+------+-----------+
| root | 127.0.0.1 |
| root | localhost |
| root | web02     |
+------+-----------+
3 rows in set (0.00 sec)
# 为wordpress数据库创建专门管理的wordpress用户并授予所有权限
mysql> grant all on wordpress.* to wordpress@'localhost' identified by '123456';
Query OK, 0 rows affected (0.00 sec)

mysql> select user,host from mysql.user;
+-----------+-----------+
| user      | host      |
+-----------+-----------+
| root      | 127.0.0.1 |
| root      | localhost |
| wordpress | localhost |
| root      | web02     |
+-----------+-----------+
4 rows in set (0.00 sec)
mysql> show grants for wordpress@'localhost'; # 查看指定用户所具有的权限 
mysql> flush privileges; # 刷新一下,使用户权限生效

安装Wordpress

[root@web02 bbs]# cd /home/oldboy/tools/
[root@web02 tools]# wget https://cn.wordpress.org/wordpress-4.9.4-zh_CN.tar.gz
[root@web02 tools]# tar -xf wordpress-4.9.4-zh_CN.tar.gz
[root@web02 tools]# cp -a wordpress/* /application/apache/htdocs/bbs/
[root@web02 tools]# ls /application/apache/htdocs/bbs/
index.html       wp-admin              wp-includes        wp-signup.php
index.php        wp-blog-header.php    wp-links-opml.php  wp-trackback.php
license.txt      wp-comments-post.php  wp-load.php        xmlrpc.php
readme.html      wp-config-sample.php  wp-login.php
test_info.php    wp-content            wp-mail.php
wp-activate.php  wp-cron.php           wp-settings.php
[root@web02 tools]# chown -R www.www /application/apache/htdocs/bbs/

创建自己的博客

           

         

         

           


      

               

     

        接下来请开发你自己的博客吧! 

                 


显示请求头信息

[root@web02 ~]# curl -I bbs.etiantian.org
HTTP/1.1 200 OK
Date: Sun, 06 May 2018 08:54:22 GMT
Server: Apache/2.4.29 (Unix) PHP/5.3.27
X-Powered-By: PHP/5.3.27
Link: <http://bbs.etiantian.org/index.php/wp-json/>; rel="https://api.w.org/"
Content-Type: text/html; charset=UTF-8

总结

本次搭建博客是非常愉快的,通过本次搭建学到了很多,最主要的收获是对部署Apache服务有了一个全新的认识,在部署时出现了APR错误,这个错误在以往中是没有见过的,通过这个错误,我对编译安装又有了一个全新的认识,嘿嘿嘿,肯定想不到吧,怎么Apache服务与编译安装扯上了关系吧。在部署一个服务时会牵扯到许多知识,所以很容易就会遇到自己觉得自己会了的知识,实际上还存在欠缺,这是可贵的。本次博客搭建并不算完美,存在一些瑕疵,虽不影响博客搭建,但是一个合格运维人员所不愿出现的,就是缺少优化,前言中说的有关优化在下一篇博客将会解决。


    





猜你喜欢

转载自blog.csdn.net/zisefeizhu/article/details/80218087