实验-----在centos6上编译lamp基于fpm模式的应用wordpress

前端之家收集整理的这篇文章主要介绍了实验-----在centos6上编译lamp基于fpm模式的应用wordpress前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

实验:在centos6上编译lamp基于fpm模式的应用wordpress,并且实现xcache加速

软件版本:

apr-1.6.2.tar.gz mariadb-5.5.57-linux-x86_64.tar.gz

apr-util-1.6.0.tar.gz xcache-3.2.0.tar.gz

PHP-5.6.31.tar.xz httpd-2.4.28.tar.bz2

wordpress-4.8.1-zh_CN.tar.gz

必要的包:

"development tools" 开发环境包组

openssl-devel expat-devel pcre-devel httpd需要的包

libxml2-devel bzip2-devel libmcrypt-devel PHP需要的包

步骤:

1、源码编译安装Httpd2.4

具体含义请参考之前的博文:http://13150617.blog.51cto.com/13140617/1974733

①安装包组及包

yum groupinstall "development tools" 安装开发包组

yum install openssl-devel expat-devel pcre-devel 安装必要的包

②下载软件并解压

tar xvf apr-1.6.2.tar.gz

tar xvf apr-util-1.6.0.tar.gz

tar xvf httpd-2.4.28.tar.bz2

cp -r apr-1.6.2 httpd-2.4.28/srclib/apr

cp -r apr-util-1.6.0 httpd-2.4.28/srclib/apr-util 将apr和apr-util放到同一指定目录下

③编译安装httpd

cd httpd-2.4.28/

./configure --prefix=/app/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 4 && make install

④将httpd的命令路径加入PATH变量,方便使用(不需要每次都使用绝对路径

vim /etc/profile.d/lamp.sh

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

. /etc/profile.d/lamp.sh执行脚本使其生效

启动服务

apachectl start

配置成服务

cp /etc/init.d/httpd /etc/init.d/httpd24

vim /etc/init.d/httpd24

apachectl=/app/httpd24/bin/apachectl

httpd=${HTTPD-/app/httpd24/bin/httpd}

pidfile=${PIDFILE-/app/httpd24/logs/httpd.pid}

lockfile=${LOCKFILE-/var/lock/subsys/httpd24}

chkconfig --add httpd24

service http24 restart 重启服务

查看已打开80端口:ss -ntl

0646c881e676853fdfc64e3ba00cc3ef.jpg

2、二进制安装mariadb

具体含义请参考之前的博文:http://13150617.blog.51cto.com/13140617/1971776

①下载二进制包并解压

tar xvf mariadb-10.2.9-linux-x86_64.tar.gz -C /usr/local/ 路径必须在这里

②将解压后的包改名为MysqL

cd /usr/local

ln -s mariadb-10.2.9-linux-x86_64/ MysqL 创建软链接,名字必须为MysqL

或者,mv mariadb-10.2.9-linux-x86_64MysqL 直接改名为MysqL

③创建MysqL用户

mkdir -p /app/MysqLdb

useradd -r -m -d /app/MysqLdb -s /sbin/nologin MysqL 创建MysqL用户,家目录为/app/MysqLdb,可以自己指定


【附加,可以不做此操作:使用逻辑卷作为数据库的数据存放位置

设置-->添加一块硬盘

echo '- - -' > /sys/class/scsi_host/host2/scan 使硬盘生效

创建逻辑卷:

pvcreat /dev/sdb vgcreate vg_MysqLdb /dev/sdb

lvcreate -n lv_MysqLdb -l +100%FREE vg_MysqLdb

mkfs.ext4 /dev/vg_MysqLdb/lv_MysqLdb -L /app/MysqLdb(卷标名) 格式化

vim /etc/fstab 配置开机挂载 /dev/vg_MysqLdb/lv_MysqLdb /app/MysqLdb ext4 defaults,acl 0 0

mount -a 重新挂载

chown MysqL /app/MysqLdb 修改文件所属人为MysqL

生成数据库文件

cd/usr/local/MysqL/

scripts/MysqL_install_db --datadir=/app/MysqLdb --user=MysqL 运行脚本生成数据库文件

生成MysqL配置文件

mkdir /etc/MysqL

cp support-files/my-large.cnf /etc/MysqL/my.cnf 文件名必须叫这个vim /etc/MysqL/my.cnf

[MysqLd]

datadir = /app/MysqLdb

innodb_file_per_table = ON

skip_name_resolve = ON⑥将mysqp配置成服务MysqLd

cp support-files/MysqL.server /etc/init.d/MysqLd

chkconfig --add MysqLd

service MysqLd start 启动不了因为没有日志文件,根据提示做如下操作

touch /var/log/MysqLd.log 创建日志文件

chown MysqL /var/log/MysqLd.log 修改日志文件权限

service MysqLd start 启动MysqLd服务

ss -ntl 看到3306端口打开

d36e5b196c4faf52bf777424ab28de30.jpg

MysqLd的命令路径加入变量,方便使用

vim /etc/profile.d/lamp.sh

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

. /etc/profile.d/lamp.sh

运行安全脚本,设置root密码

MysqL_secure_installation 登陆数据库创建数据库用户wordpress的实现做准备

MysqL -uroot -pcentos

>create datebase blogdb; 创建blogdb数据库

创建用户wpuser@'192.168.199.%'并授权:

>grant all on blogdb.* to wpuser@'192.168.199.%' identified by '123456';


3、源码编译安装PHP

①安装必要的包,下载PHP源码并解压

yum install libxml2-devel bzip2-devel libmcrypt-devel 有的包需要epel源

tar xvf PHP-7.1.10.tar.xz

②编译安装PHP,基于fpm独立服务方式

cd PHP-7.1.10/

./configure --prefix=/app/PHP \

--with-MysqL=/usr/local/MysqL \

--with-openssl \

--with-MysqLi=/usr/local/MysqL/bin/MysqL_config \

--enable-mbstring \

--with-freetype-dir \

--with-jpeg-dir \

--with-png-dir \

--with-libxml-dir=/usr \

--enable-xml \

--enable-sockets \

--enable-fpm \

--with-mcrypt \

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

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

--with-bz2 make -j 4 && make install

PHP的命令路径加入 vim /etc/profile.d/lamp.sh

PATH=/app/httpd24/bin/:/usr/local/MysqL/bin/:/app/PHP/bin/:$PATH

. /etc/profile.d/lamp.sh

④准备PHP所需的文件


准备PHP配置文件

mkdir /etc/PHP

cp PHP-7.1.10/PHP.ini-production /etc/PHP/PHP.ini


复制脚本模板并配置成服务,方便使用:

cp PHP-7.1.10/sapi/fpm/init.d.PHP-fpm.in /etc/init.d/PHP-fpm

chkconfig --add PHP-fpm

chmod +x /etc/init.d/PHP-fpm

准备自己服务的配置文件

cp /app/PHP/etc/PHP-fpm.conf.default /app/PHP/etc/PHP-fpm.conf

4、编辑httpd的主配置文件使其支持PHP

vim /app/httpd24/conf/httpd.conf

文件尾部加四行

ProxyRequests Off

ProxyPassMatch ^/(.*\.PHP)$ fcgi://127.0.0.1:9000/app/http24/htdocs/$1

AddType application/x-httpd-PHP .PHP

AddType application/x-httpd-PHP-source .PHPs 取消两行注释

LoadModule proxy_module modules/mod_proxy.so

LoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so

修改页面顺序

<IfModule dir_module>

DirectoryIndex index.PHP index.html

</IfModule>

启动PHP服务:

service PHP-fpm start

如果启动不起来,报错如下:

03d9cf7e7a8335230cdef8bf051f2590.jpg

那么vim /etc/init.d/PHP-fpm

修改如下三行,都修改绝对路径

PHP_fpm_BIN=/app/PHP/sbin/PHP-fpm

PHP_fpm_CONF=/app/PHP/etc/PHP-fpm.conf

PHP_fpm_PID=/app/PHP/var/run/PHP-fpm.pid

再启动即可service PHP-fpm start

可以使用ss -ntl 查看9000端口打开了

550e7c0238f2f6276efa04efcd5a2ba2.jpg

5、测试PHP和mariadb连接

vim /app/httpd24/htdocs/index.PHP

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

<?PHP

$MysqLi=new MysqLi("MysqLserver","root","123456");

if(MysqLi_connect_errno()){

echo "连接数据库失败!";

$MysqLi=null;

exit;

}

echo "连接数据库成功!";

$MysqLi->close();

PHPinfo();

?>

网页访问:http://192.168.199.137/,效果如下则测试成功。至此lamp架构就实现了

552d6d73eb6e1d954bc6aa52e6c3b3f3.jpg

6、配置wordpress

①下载wordpress并解压

tar xvf wordpress-4.8.1-zh_CN.tar.gz

②将wordpress下所有文件放到主站点下,并且配置使其连接数据库

mv wordpress/* /app/httpd24/htdocscd /app/httpd24/htdocs/

cp wp-config-sample.PHP wp-config.php 准备配置文件

vim wp-config.php 编辑配置文件

define('DB_NAME','blogdb'); 数据库

define('DB_USER','wpuser'); 用户名

define('DB_PASSWORD','123456'); 密码

define('DB_HOST','localhost'); 数据库所在服务器地址

7、性能测试: ab-c 20 -n 1000 http://192.168.199.137

windows测试:http://192.168.199.137出现如下欢迎界面

da83ec61b80560e673babbac6e5f8946.jpg

8、xcache加速

①下载工具并解压

tar xvf xcache-3.2.0.tar.gz

编译安装xcache

cd xcache-3.2.0

PHPize 生成编译环境

./configure --enable-xcache --with-PHP-config=/app/PHP/bin/PHP-config

make && make install 编译安装

③配置xcache

mkdir /etc/PHP.d

cp xcache-3.2.0/xcache.ini /etc/PHP.d/ 将xcache复制到PHP.d下就可以使PHP和xcache结合在一起

修改库的路径(可以使用ls看一下路径):

vim /etc/PHP.d/xcache.ini

extension = /app/PHP/lib/PHP/extensions/no-debug-non-zts-20131226/xcache.so

重启PHP-fpm服务

servicePHP-fpmrestart

性能测试:ab-c 20 -n 1000 比较之前会发现处理速度明显提升


感谢浏览,如有疑问,欢迎留言

j_0080.gif

原文链接:https://www.f2er.com/centos/375438.html

猜你在找的CentOS相关文章