lamp之编译安装php及xcache

php:

0.安装相关扩展的rpm包和依赖

加密功能:

#tar -xf libmcrypt-xxx.tar.gz

#cd libmcrypt-xx

#./configure

#make && make install

支持大字符集:

#yum -y install php-mbstring 支持中文等字符

支持xml和压缩:

#yum -y install libxml2-devel bzip2-devel

1.解压安装包

#tar xf php.xxx.tar.bz2 php.xxx

#cd php.xxx

2.编译安装:

编译为httpd的模块:

#./configure --prefix=/usr/local/phpXX --with-config-file-path=/etc --with-config-file-scan-dir=/etc/php.d --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --with-apxs2=/usr/local/httpd/bin/apxs --with-openssl  --enable-mbstring --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr/lib64 --enable-sockets  --with-mcrypt  --with-bz2 --enable-maintainer-zts

#make

#make install

编译为fpm模式:

将--with-apxs2=/usr/local/httpd/bin/apxs替换为

--enable-fpm

删除--enable-maintainer-zts

编译常见选项:

--prefix=/usr/local/php

--with-config-file-path=/etc 指定配置文件的文件夹

--with-config-file-scan-dir=/etc/php.d 指定配置文件夹片段目录

--with-mysql=/usr/local/mysql

--with-openssl 支持openssl功能

--with-mysqli=/usr/local/mysql/bin/mysql_config php和mysql交互的另一种接口,二进制程序mysql_config

--enable-mbstring 多字节string,支持中文等多字节,需要安装php-mbstring包。

--with-freetype-dir freetype字体引擎,引用特定字体

--with-jpeg-dir

--with-png-dir

--with-zlib 启用zlib压缩库支持

--with-libxml-dir=/usr/lib64 启用xml支持,并指定xml库文件位置,需要安装libxml2-devel包。

--enable-sockets 启动基于套接字的通信

--with-apxs2=/usr/local/httpd/bin/apxs 使用apsx将php编译为httpd的模块。

--with-mcrypt 启用额外的加密库,需要libmcrypt-devel

--with-config-file-path=/etc 指定php主配置文件存放的目录。配置文件为php.ini

--with-config-file-scan-dir=/etc/php.d php的配置片段位置。

--with-bz2 启动压缩库,需要安装相应的bzip2-devel包

--enable-maintainer-zts 若httpd以线程方式工作则需要此项。即MPM为profork则不需要启动次项。若为event或worker则需要此项支持。

3.提供配置文件

#cp php.ini-production /etc/php.ini

4.编辑httpd的配置文件,增加php的支持:

#vim /etc/httpd/httpd.conf

DirectoryIndex index.php index.html

AddType application/x-httpd-php .php

AddType application/x-httpd-php-source .phps php源码支持。

5.若php以fpm模式编译则需要执行:

1.给php-fpm提供Sysv风格脚本

#cp sapi/fpm/init.d.php.fpm /etc/rc.d/init.d/php-fpm

#chmod +x /etc/rc.d/init.d/php-fpm

2.为php-fpm提供配置文件

#cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf

3.修改配置文件

#vim /usr/local/php/etc/php-fpm.conf

pm.max_children = 50 最大子进程数

pm.start_servers = 5 服务启动时的空闲进程数

pm.min_spare_servers = 2 最小空闲进程数

pm.max_spare_servers = 8 最大空闲进程数

pid = /usr/local/php/var/run/php-fpm.pid

指定pid文件位置,此项定义在服务脚本php-fpm中,2者保持一致即可。

启动php-fpm

#systemctl start php-fpm

验证:

#ps-aux|grep php-fpm

#netsta -tnlp|grep php-fmp

默认情况下fpm监听在9000端口。

Xcache

1.解压软件包:

#tar xf xcache.xxx.tar.gz xcache.xxx

#cd xcacahe.xxx

2.安装:

#/usr/local/php/bin/phpize 在当前目录运行phpize。phpize是在编译安装php扩展之前对其进行准备的程序。

#./configure \

--enable-xcache\ 启用xcache功能

--with-php-config=/usr/local/php/bin/php-config php-config是可以获得有关php配置和编译选项的信息的小脚本。

#make && make install

安装结束时,会出现类似如下行:

Installing shared extensions:     /usr/local/php/lib/php/extensions/no-debug-[non]-zts-20100525/

3.将xcache配置文件样例的内容追加到php配置文件中

#cat xcache.ini >> /etc/php.ini

#cp xcache.ini /etc/php.d/

推荐使用第二种方法。

4.修改xcache.ini

#vim /etc/php.d/xcache.ini

zend_extension = /usr/local/php/lib/php/extensions/no-debug-zts-xxx/xcache.so

用刚才安装结束时生成的路径进行替换。

zend_extension = /usr/local/php/lib/php/extensions/no-debug-zts-20100525/xcache.so

注意:如果将xcache.ini追加到php.ini文件中,有多条zend_extension指令行,要确保此新增的行排在第一位。

注意:若php以fpm方式编译,则不需要修改配置文件,直接重启php-fpm服务即可。

xcache.ini

[xcache.common]

zend_extension = /usr/local/php/lib/php/extensions/no-debug-zts-xxx/xcache.so

...

[xcache.admin]

...

[xcache]

xcache.shm_schem= "mmap" 指定在各php进程间共享内存的方式。mamp为内存映射,一段内存多个进程可以访问。

xcache.size=60M 缓存Opcode的大小。设置为0表示禁用此功能。

xcache.count=1 设置cpu个数

xcache.slots=8K 槽位设置,hash相关

xcache.ttl=0 缓存项目的过期时间,0表示永不过期,由xcache自行管理。

xcache.gc_intrval=0 垃圾回收器工作周期。0表示不扫描,其他数值单位是秒。

xcache.var_size=4M 变量缓存

xcache.var_count=1 缓存个数

xcache_var_slots=8K

xcache_var_ttl=0

xcache_var-maxttl=0

xcache.var_gc_intrval=300

xcache.cather=On xcache的缓存功能

xcache.stat=On

xcache.optimizer=Off xcache自身的优化器

xcache.test=Off

xcache.experimental=Off

时间: 2024-09-30 15:39:08

lamp之编译安装php及xcache的相关文章

apache/mysql/php编译安装及支持xcache和fastcgi方式运行

一.编译安装apache     1.安装环境:yum install gcc gcc-c++ openssl-devel libtool -y     2.安装apr.apr-util及pcre         tar jxf apr-1.5.1.tar.bz2         cd apr-1.5.1         ./configure --prefix=/usr/local/apr         make && make install              tar jxf

Linux lamp环境编译安装

1.安装准备: 1)httpd-2.0.52.tar.gz 2)mysql-4.1.12.tar.gz 3)libxml2-2.6.27.tar 4)freetype-2.1.10.tar 5)gd-2.0.33.tar 6)jpegsrc.v6b.tar 7)libpng-1.2.16.tar 8)zlib-1.2.3.tar 9)freetds-0.64.tar.gz 10)php-4.3.9.tar.gz 11)phpMyAdmin292.tar.gz 12)ZendOptimizer-3

LAMP环境-编译安装php-fpm

配置httpd-2.4.23以fpm方式的php-5.5.38 一.apache.MySQL的安装与前一部分相同:请根据其进行安装: 可以参考编译安装LAMP http://ljohn.blog.51cto.com/11932290/1863283 二.编译安装php-5.5.38 1.解决依赖关系: 请配置好yum源(可以是本地系统光盘)后执行如下命令: # yum -y groupinstall "X Software Development" 如果想让编译的php支持mcrypt

lamp之编译安装httpd

编译安装LAMP顺序: httpd--> mysql --> php -->XCache httpd: apr--> apr-util -->httpd 0.确保安装环境 #yum groupinstall "Development Tools" "Compatibility Libraries" #yum -y install pcre-devel openssl-devel 1.安装apr和apr-util: apr(Apache

LAMP之编译安装搭建

 lamp编译搭建 1.lamp简介: LAMP指的Linux(操作系统).ApacheHTTP 服务器,MySQL(有时也指MariaDB,数据库软件) 和PHP(有时也是指Perl或Python) 的第一个字母,一般用来建立web应用平台. 2.搭建环境: 系统:centos6.5-x86_64 iptables关闭.selinux关闭.自带httpd服务关闭: 程序: mysql-5.5.33-linux2.6-x86_64.tar php-5.4.19.tar httpd-2.4.6.t

基于lamp环境编译安装zabbix

环境:lamp 系统:centos 6 前提:编译安装软件需要安装开发环境,关闭iptables和selinux # yum groupinstall "Development Tools"  "Server Platform Development" 一.编译安装httpd httpd2.4需要apr.apr-util依赖包 1.编译安装apr.apr-util # tar xf apr-1.5.0.tar.bz2  # cd apr-1.5.0 # ./conf

LAMP之编译安装

在linux中由于存在yum这种包管理方式,使得安装部署软件变得十分简单易用,但在某些特定情况下,由于有特殊需求,需要基于编译这种方式来定制化安装所需要的软件,以能特供自己所需的功能,此处我们来基于编译实现LAMP环境,来揭开编译安装这种听起来高大上的安装方式. 首先来交代一下实验环境 系统:CentOS 7.2 IP地址::172.16.38.100 httpd版本:httpd-2.4.10 php版本:php-5.4.40 mysql版本:mysql-5.5.33 一.编译安装httpd:

LAMP环境编译安装问题总结

apache: 问题: 安装apache的时候入到 error: mod_deflate has been requested but can not be built due to prerequisite failures的错误. 解决: 没有安装zlib包.运行命令: yum install zlib-devel PHP: 问题: 编译安装php出错mcrypt.h not found. Please reinstall libmcrypt yum install libmcrypt li

LAMP环境编译安装(详细)

linux下Apache.mysql.php.phpMyadmin源码包编译安装及配置 事先可以先去各应用官网选择相应的源码包下载并上传到linux服务器上.源码包目录根据喜好或一个标准放置即可. 注:此文档仅适用于自己学习及测试使用,后续还将继续完善及解读文档中的不足. 在此之前先关闭selinux(Secrity-EnhancedLinux,安全增强式Linux),不然会由于selinux的安全机制影响到一些配置文件的加载及更改. 临时关闭(不用重启机器): setenforce 0 1.安