centos7源码编译实现LAMP

centos7源码编译实现LAMP 基于php-fpm

lamp

Linux+Apache+Mysql/MariaDB+Perl/PHP/Python一组常用来搭建动态网站或者服务器的开源软件,本身都是各自独立的程序,但是因为常被放在一起使用,拥有了越来越高的兼容度,共同组成了一个强大的Web应用程序平台。
192.168.63.131安装apache 和php-fpm 用源码编译实现
192.168.63.132安装mysql 二进制安装
并搭建WordPress博客

需要用到的包并执行包的顺序
1. apr-1.6.3.tar.gz 用于源码编译httpd
2. apr-util-1.6.1.tar.gz 用于源码编译httpd
3. httpd-2.4.33.tar.bz2 用于源码编译httpd
4. mariadb-10.2.15-linux-x86_64.tar.gz 用于二进制安装数据库
5. php-7.1.18.tar.bz2 用于源码编译php
6. wordpress-4.9.4-zh_CN.tar.gz 用于搭建博客

在192.168.63.131编译安装Apache
mkdir /srcs 创建一个没有了,将用到的包统一放到目录里面

进行包解压
tar xvf apr-1.6.3.tar.gz
tar xvf apr-util-1.6.1.tar.gz
tar xvf httpd-2.4.33.tar.bz2

将apr-1.6.3 目录拷贝到httpd-2.4.33下的子目录并改名为apr
mv apr-1.6.3 httpd-2.4.33/srclib/apr

将apr-util-1.6.1 目录拷贝到httpd-2.4.33下的子目录并改名为apr-util
mv apr-util-1.6.1 httpd-2.4.33/srclib/apr-util

切换到/httpd-2.4.33/目录下
cd srcs/httpd-2.4.33/

安装开发包组
yum groupinstall “Development Tools” -y

安装依赖包
yum install libxml2-devel bzip2-devel libmcrypt-devel -y

yum install pcre-devel openssl-devel expat-devel -y

进行源码编译
[root@contes7 httpd-2.4.33]# ./configure –prefix=/appl/httpd24 \
–enable-so \
–enable-ssl \
–enable-cgi \
–enable-rewrite \
–with-zlib \
–with-pcre \
–with-included-apr \
–enable-modules=most \
–enable-mpms-shared=all \
–with-mpm=prefork

编译安装
make -j 2 && make install

设置环境变量
echo PATH=/appl/httpd24/bin:$PATH > /etc/profile.d/lamp.sh

. /etc/profile.d/lamp.sh

启动Apache服务
apachectl

浏览器测试
http://192.168.63.131/

在192.168.63.132二进制编译数据库

#清除防火墙
iptables -F
#更改/etc/selinux/config里面的SELINUX=disabled,关闭selinux
sed -i -r ‘s/^SELINUX=.*/SELINUX=disabled/’ /etc/selinux/config
#安装libaio包
yum install -y libaio &> /dev/null
#查看在/etc/passwd文件里面有没有mysql用户,如果没有创建mysql用户
getent passwd mysql || echo `useradd -r -d /data/mysqldb -s /sbin/nologin mysql`
#查看/usr/local/目录下有没有解压完成的包,如果没有解压安装包
ls -l /usr/local/mariadb-10.2.15-linux-x86_64 &> /dev/null || echo `tar xvf /root/mariadb-10.2.15-linux-x86_64.tar.gz -C /usr/local/ &> /dev/null`
#切换到/usr/local/目录
cd /usr/local
#设置软链接
ln -s mariadb-10.2.15-linux-x86_64/ mysql
#设置mysql目录下的所有文件的属主和属组是root
chown -R root:root mysql/
在/etc/profile.d/mysql.sh文件下加入/usr/local/mysql/bin的PATHA变量
echo PATH=/usr/local/mysql/bin:$PATH > /etc/profile.d/lamp.sh #
#给/etc/profile.d/mysql.sh文件加执行权限
chmod +x /etc/profile.d/lamp.sh
#切换到家目录
cd
#执行/etc/profile.d/mysql.sh脚本
source /etc/profile.d/lamp.sh
#在data目录创建mysqldb目录
mkdir /data/mysqldb -p
#设置/data/mysqldb目录的的属主和属组是mysql用户
chown mysql.mysql /data/mysqldb
#切换到/usr/local/mysql目录
cd /usr/local/mysql
#在/data/mysqldb下生成数据库
scripts/mysql_install_db –datadir=/data/mysqldb –user=mysql
#覆盖系统自带的配置文件
cp /usr/local/mysql/support-files/my-huge.cnf /etc/my.cnf -a
#在配置文件里面的[mysqld]下面添加一行datadir = /data/mysqldb
sed -i ‘/\[mysqld\]/a\datadir = /data/mysqldb’ /etc/my.cnf &> /dev/null
#拷贝启动文件到/etc/init.d/mysqld
cp support-files/mysql.server /etc/init.d/mysqld -a
chkconfig –add mysqld
#启动mysql
systemctl start mysql.service

查看二进制日志有没有启用
show variables like “log_bin”;

查看是不是分库分表
show variables like “innodb_file%”;

创建wpsb数据库,用于搭建WordPress博客
create database wpdb;

创建wpuser用户,密码是centos,权限是all所有权限
grant all on *.* to wpuser@’192.168.63.%’ identified by ‘centos’;

刷新权限
flush privileges;

在192.168.63.131编译安装php fastcgi
解压PHP包
tar xf php-7.1.18.tar.bz2

切换到解压的PHP目录
cd php-7.1.18
执行编译
./configure –prefix=/appl/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 \
–enable-fpm \
–with-config-file-path=/etc \
–with-config-file-scan-dir=/etc/php.d \
–enable-maintainer-zts \
–disable-fileinfo

编译安装
make -j 2 && make install

切换到htdocs目录
cd /appl/httpd24/htdocs/

解压WordPress包
tar xvf wordpress-4.9.4-zh_CN.tar.gz

将解压的内容拷贝到 /appl/httpd24/htdocs/目录下
mv wordpress/* /appl/httpd24/htdocs/

拷贝配置文件
cp wp-config-sample.php wp-config.php

修改配置文件
vim wp-config.php

配置环境变量
vim /etc/profile.d/lamp.sh

PATH=/appl/php/bin:/appl/php/sbin:/appl/httpd24/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

执行lamp.sh脚本
. /etc/profile.d/lamp.sh

拷贝 php.ini-production到/etc/目录下并改名为php.ini
cd /root/srcs/php-7.1.18/
cp php.ini-production /etc/php.ini

拷贝init.d.php-fpm 到/etc/init.d/目录下
cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm

给php-fpm 执行权限
chmod +x /etc/init.d/php-fpm

chkconfig –add php-fpm

cd /appl/php/etc/

将php-fpm.conf.default改名为php-fpm.conf
cp php-fpm.conf.default php-fpm.conf

将php-fpm.d/目录下的/www.conf.default 改名为www.conf
cp php-fpm.d/www.conf.default php-fpm.d/www.conf

启动服务
systemctl start php-fpm

查看9000端口有没有起来
ss -ntl

2018/06/22 11:57
配置http的配置文件
vim /appl/httpd24/conf/httpd.conf

搜索关键字

取消前面的注释
LoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so
LoadModule proxy_module modules/mod_proxy.so

DirectoryIndex index.php index.html

在最后一行加入下面四行
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
ProxyRequests Off
ProxyPassMatch ^/(.*\.php)$ fcgi://127.0.0.1:9000/appl/httpd24/htdocs/$1

关闭http服务
apachectl stop

启动http服务
apachectl

浏览器测试
http://192.168.63.131/wp-admin/index.php

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/101541

(0)
周亚飞周亚飞
上一篇 2018-06-24
下一篇 2018-06-24

相关推荐

  • 向CA申请证书

     实验向CA申请证书 步骤: 建立Root CA 1)生成私钥 2)自签名证书 2.用户或服务器 1)生成私钥 2)生成证书申请文件 3)将申请文件发给CA 3.CA颁发证书 4.证书发送给客户端 5.应用软件使用证书 如:centos7当服务器,centos6客户端 ,即centos6向centos7申请证书 第一:建立根CA 生成私钥的文件放在哪,文件名…

    2018-05-19
  • iproute家族命令简介

    iproute家族命令简介

    Linux笔记 2018-04-20
  • 文本处理工具Sed

    sed的基本用法和高级用法

    2018-04-15
  • CentOS 6 开机流程

    CentOS 6 开机流程——linux由kernel和rootfs组成。kernel负责进程管理、内存管理、网络管理、驱动程序、文件系统、安全等;rootfs由程序和glibc组成,完善操作系统的功能。同时linux内核的特点是模块化,通过对模块装载卸载可以对内核功能自定义。linux内核镜像文件:/boot/vmlinuz-2.6.32-696.el6.…

    Linux笔记 2018-05-13
  • 正则表达式用户管理

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。 [root@localhost ~]# cp -r /etc/skel /home/tuser1 [root@localhost ~]# chmod 700 /home/tuser1 -R [root@localhost ~…

    2018-06-04
  • 追风筝的人

    IO重定向 管道 tr 用户管理 组管理 文件权限管理 文本处理工具
    Grep和正则表达式 扩展的正则表达式和VIM

    Linux笔记 2018-04-08