CentOS7基于源码编译安装LAMP的wordpress应用的实现

WordPress应用:

WordPress 是一种基于PHP 语言开发的博客平台,咱们能够在支持PHP MySQL 数据库的服务器上部署属于本身的博客网站,在上面发布本身的博客文章。同时也能够把WordPress 看成一个内容管理系统(CMS)来使用。php

LAMP的简介:

LAMP是在linux下基于ApacheMysql/MariadbPHP软件包下环境下搭建的运行动态网站或者服务器。html

事前准备环境:

1、软件包准备:

咱们能够在相关的软件包官网上下载稳定的版本。mysql

apr-1.6.2.tar.gz                      linux

apr-util-1.6.0.tar.gz web

mariadb-10.2.8-linux-x86_64.tar.gz  sql

httpd-2.4.27.tar.bz2 数据库

php-7.1.10.tar.xzapache

wordpress-4.8.1-zh_CN.tar.gzvim

2、准备一台centos7.3的干净系统

主机的ip地址为192.168.146.130

3、关闭防火墙和selinux

防火墙:开机关闭centos

[root@centos7 ~]# systemctl disablefirewalld

[root@centos7 ~]# systemctl stop  firewalld

关闭Selinux

#临时关闭

[root@centos7 ~]# setenforce 0  

#永久关闭

sed -i's/^SELINUX=enforcing/SELINUX=permissive/g' /etc/selinux/config

实验步骤:

1、源码编译安装Httpd2.4

1.1安装开发包组

由于咱们这个实验是须要经过大量的编译来安装相关的软件,因此须要对实验环境提早安装开发包组

yum -ygroupinstall "development tools" 

安装额外须要所依赖的软件包

yum install openssl-devel expat-develpcre-devel

1.2解压源码文件包

tar xvf apr-1.6.2.tar.gz

tar xvf apr-util-1.6.0.tar.gz

tar xvf httpd-2.4.27.tar.bz2

1.3aprapr-util复制到httpd-2.4.27目录下

[root@centos7 src]# cp -r apr-1.6.2httpd-2.4.27/srclib/apr

[root@centos7 src]# cp -r apr-util-1.6.0httpd-2.4.27/srclib/apr-util

1.4编译httpd

#进到httpd-2.4.27目录下

[root@centos7 src]# cd httpd-2.4.27/

./configure --prefix=/app/httpd24--sysconfdir=/etc/httpd24 --enable-so --enable-ssl --enable-rewrite --with-zlib--with-pcre --with-included-apr --enable-modules=most --enable-mpms-shared=all--with-mpm=prefork

#开始安装,用4线程进行安装,比较快,注意处理器要有4

make -j 4 && make install

#用命令查看一下发现没有报错,若是有报错,缺什么包就安装什么包

[root@centos7 httpd-2.4.27]# echo $?

0

#完成以后测试一下看生成httpd下的相关目录和主页网站有了没,如下能够看到没问题。

cd /app/httpd24

[root@centos7 httpd24]# ls

bin  cgi-bin  htdocs include  logs  manual

build error    icons   lib   man   modules

1.5把主页面的 it works字段改为LAMP;路径是在htdocs目录下

[root@centos7 htdocs]# vim index.html

<html><body><h1>LAMP</h1></body></html>

1.6将命令选项添加到环境变量里面

#/etc/profile.d/目录下添加添加lamp.sh脚本将安装好的httpd路径添加到这个环境变量里。

vim /etc/profile.d/lamp.sh

PATH=/app/httpd24/bin/:$PATH

执行下生效命令

. /etc/profile.d/lamp.sh

1.7启动httpd服务

apachectl start  #启动httpd服务

在网页上输入主机的地址就能够访问出现上面所填的LAMP字样了。

ss -tnl  #查看一下发现已经出现80端口了。

wKiom1nku7_BIQNCAAB00vsj3l8342.png

2、二进制安装mariadb

2.1解压mariadb-10.2.8二进制文件

#注意必定要解压到/usr/local/这目录下

tar xvfmariadb-10.2.8-linux-x86_64.tar.gz  -C/usr/local/

2.3建立一个软连接目录mysql

cd /usr/local

ln -s mariadb-10.2.8-linux-x86_64/ mysql

#查看一下本机没有发现mysql帐户

getent passwd mysql

2.4建立mysql帐户

useradd -r -m -d /app/mysqldb -s/sbin/nologin mysql

#注意:-m -d 是强制建立家目录的路径/app/mysqldb,它是用来存放数据库的不是程序,也就是数据库放的路径,-s指定只能是mysql 才能登录。

#查看家目录已经存在了

[root@centos7 local]# ll /app/mysqldb/ -d

drwx------. 3 mysql mysql 78 Oct 16 14:43/app/mysqldb/

2.5建立数据库文件

进入到刚刚建立的mysql 路径,利用mysql自带的脚本文件,建立数据库,数据库的路径是/app/mysqldb,指定用mysql用户建立

cd mysql/   #也就是进入/usr/local/mysql

scripts/mysql_install_db--datadir=/app/mysqldb --user=mysql

2.6建立mysql的配置文件,而且修改其下的文件内容

建立mysql文件路径

二进制安装的自己没有带文件路径因此须要建立

[root@centos7 mysql]#mkdir /etc/mysql

[root@centos7 mysql]# cpsupport-files/my-huge.cnf /etc/mysql/my.cnf

配置文件成功后须要对文件进行修改,注意不能写错,不然mysql数据库启动不了。找到mysql数据这一行加上三行选项

[root@centos7 mysql]# vim /etc/mysql/my.cnf

datadir =/app/mysqldb   #这行添加数据库的路径是必须加的

innodb_file_per_table= ON  # 这项和下面这项加不加没事

skip_name_resolve= ON  #禁止主机名解释,这行能够不要

2.7建立mysqld的开启动脚本并添加到开机启动项里面

流程和配置文件同样能够根据安装文件提供的脚本复制过来

cp support-files/mysql.server/etc/init.d/mysqld  #启动脚本不须要改

chkconfig --add mysqld    #mysqld添加到开机启动项里面

chkconfig --list           #查看已经成功加入到开机启动项

service mysqld start   

注意:启动服务发现失败,缘由是显示看到日记没有建立,它提示建立日志文件。

2.8建立日志文件

mkdir /var/log/mariadb  #建立日志文件

修改日志文件,方便数据库mysqld可以建立日志文件

chown mysql /var/log/mariadb/  #把全部者改为mysql

service mysqld start  #启动服务发现启动成功了。

2.9添加mysqld的环境变量

vim /etc/profile.d/lamp.sh

PATH=/app/httpd24/bin/:/usr/local/mysql/bin/:$PATH

#执行生效命令

. /etc/profile.d/lamp.sh

2.10安全数据库初始化,删除测试库和匿名用户

初始化设置root密码是centos7

[root@centos7 mysql]#mysql_secure_installation

2.11登陆数据库,建立数据库帐号,授予权限等信息

[root@centos7 mysql]# mysql -uroot-pcentos7

create database wpdb;  #建立数据库为wpdb

grant all on wpdb.* to wpuser@'192.168.146.%'identified by 'centos7';

#受权全部权限给wpuser用户,密码是centos7

grant all on wpdb.* to wpuser@'127.%'identified by 'centos7';

#受权给127主机的用户容许链接

grant all on wpdb.* to wpuser@'localhost'identified by 'centos7'

#受权给本地主机容许链接

3 源码编译安装PHP

3.1解压PHP源文件,安装依赖的软件包

cd /src #回到源文件目录下

[root@centos7 src]# tar xvfphp-7.1.7.tar.bz2  #解压

#安装php源码所须要的包

yum -y install libxml2-devel bzip2-devellibmcrypt-devel

3.2配置PHP的编译选项并进行安装

cd php-7.1.10/   #进入php-7.1.10/目录

编译PHP选项

[root@centos7 php-7.1.7]# ./configure \

>  --prefix=/app/php \

>  --enable-mysqlnd \

>  --with-mysqli=mysqlnd \

>  --with-openssl \

>  --with-pdo-mysql=mysqlnd \

>  --enable-mbstring \

>  --with-freetype-dir \

>  --with-jpeg-dir \

>  --with-png-dir \

> --with-zlib  \

>  --with-libxml-dir=/usr \

> --enable-xml  \

>  --enable-sockets \

>  --with-apxs2=/app/httpd24/bin/apxs \

>  --with-mcrypt \

>  --with-config-file-path=/etc \

>  --with-config-file-scan-dir=/etc/php.d \

>  --enable-maintainer-zts \

>  --disable-fileinfo

 

#注意这里须要必定要注意PHP5.x的版本是不存在—enable-mysql

#这个版本的选项相反,使用了mysql路径来指定

开始安装

make -j 2 && make install

3.3编写PHP的配置文件

#在解压的目录下就有php配置文件的模板,直接复制过来

wKiom1nkvMGh6OJIAABei1-8F6s170.png

#直接复制PHP的文件

[root@centos7php-7.1.7]# cpphp.ini-production /etc/php.ini

3.4配置Httpd文件添加支持PHPMIME类型

#由于是本身编译的因此路径是在/etc/httpd24/httpd.conf主配置文件,让httpd知道php

vim /etc/httpd24/httpd.conf

#搜索/AddType在文件尾部加两行

AddType application/x-httpd-php .php

AddType application/x-httpd-php-source.phps

wKiom1nkvQ2BoAgbAAC5yvbevB4688.png

#搜索DirectorIDirectoryIndex这行里添加index.php 让咱们访问本机的主页面默认是php的。

<IfModule dir_module>

   DirectoryIndex index.php index.html

</IfModule>

wKiom1nkvU3TIsPpAACfDQQrUf0115.png

apachectl stop  #关闭httpd服务

apachectl start  #启动httpd服务

4 测试phpmariadb链接

4.1 配置结束后从新启动httpd服务,同时在主页面所在的目录下添加一个index.php文件。

#因为咱们是本身编译安装的因此httpd主页目录下在咱们指定的httpd安装路径下。

[root@centos7 htdocs]# pwd

/app/httpd24/htdocs

#下面代码是用来测试PHP是否可以成功链接数据库的。

[root@centos7 htdocs]# vim index.php  

wKioL1nkuuyimj_pAAC7entOBYg092.png

链接成功的界面图所下面所示

wKiom1nkveDBBp0nAAFPrCusvJc339.png

5.1解压wordpress/app/httpd24/htdocs/目录下

tar xvf wordpress-4.8-zh_CN.tar.gz -C/app/httpd24/htdocs/

#进入到主页面下

cd /app/httpd24/htdocs

#wordpress/改为blog/

mv wordpress/ blog/

5.2blog/目录下修改配置文件中的mysql相关设置信息

cd /app/httpd24/htdocs/blog/

#参考WordPress官方提供的配置文件,建立一个配置文件,并修其中对mysql数据库的相关配置。

#直接复制参考脚本,而后在文件修改相关的数据参数就能够了。

cd /app/httpd24/htdocs/blog/

cp wp-config-sample.php  wp-config.php

vim wp-config.php

define('DB_NAME', 'wpdb');  #用户名

/** MySQL数据库用户名 */

define('DB_USER', 'wpuser');

/** MySQL数据库密码 */

define('DB_PASSWORD', 'centos7');

/** MySQL主机 */

define('DB_HOST', 'localhost');

6、初始化和登陆测试

6.1经过浏览器访问http://websrv/blogwebsrv就是安装httpd服务点的主机ip,我是用192.168.146.100主机安装的,因此就是http://192.168.146.100/blog

#下面就是WordPress的初始化配置

wKioL1nku5Lwu6yGAAFJE4ET0sc896.png

6.2初始化成功以后,再回去访问http://192.168.146.130/blog/就看到博客的注意了。

wKioL1nku83j7-M_AAJvYz3WkQo736.png

通过以上的步奏咱们实现了从无到有安装了LAMP+ wordpress应用,

咱们也能够根据生产中的实际需求吧wordpress应用换成其余应用;LAMP也有多是Linux+Nginx+MariaDB+Python这形式,根据需求不一样进行调用作出本身的选择,作到灵活的使用。

注意事项

1、注意编译安装的时候,PHP是最后编译的,由于要调用到mariadb和访问httpd的相关内容。

2、在开始编译安装PHP的时候,PHP-5.X PHP-7.X 版本不同,编译选项也有一些不一致。

3、在作实验的时候最好是使用干净的centos7.3系统;这里最好准备两台centos7主机,一台实现LAP(linuxapachephp) ,一台实现M(mariadb)数据库。

相关文章
相关标签/搜索