php编译安装与常用扩展安装
安装配置php
wget http://cn2.php.net/distributions/php-5.3.28.tar.gz //下载php5.3.28
wget http://cn2.php.net/distributions/php-5.5.28.tar.gz //下载php5.5.24
tar zxvf php-5.3.28.tar.gz
cd php-5.3.28
./configure --prefix=/usr/local/php --with-curl --enable-mbstring --with-mysql=mysqlnd --with-iconv --with-gd --enable-fpm --with-jpeg-dir --with-png-dir --enable-zip --with-freetype-dir --with-gettext --enable-gd-native-ttf // php-fpm
./configure --prefix=/usr/local/php --with-curl --enable-mbstring --with-mysql=mysqlnd --with-mysqli --enable-opcache --with-pdo-mysql --with-iconv --with-gd --enable-fpm --with-jpeg-dir --with-png-dir --enable-zip --with-freetype-dir --with-gettext --enable-gd-native-ttf --without-pdo-sqlite --without-sqlite3 // php-fpm php5.5.8
./configure --prefix=/usr/local/php --with-curl --enable-mbstring --with-mysql=mysqlnd --with-mysqli --enable-opcache --with-pdo-mysql --with-iconv --with-gd --enable-fpm --with-jpeg-dir --with-png-dir --enable-zip --with-freetype-dir --with-gettext --enable-gd-native-ttf --without-pdo-sqlite --without-sqlite3 --enable-pcntl --enable-posix --enable-maintainer-zts //多线程
./configure --prefix=/usr/local/php --with-curl --enable-mbstring --with-mysql=mysqlnd --with-iconv --with-gd --with-jpeg-dir --with-png-dir --enable-zip --with-freetype-dir --with-gettext --enable-gd-native-ttf --with-apxs2=/usr/local/apache2/bin/apxs //apache
--prefix=/usr/local/php //指定 php 安装目录
--with-mysql=mysqlnd //对mysql的支持
--with-bz2 打开对bz2文件的支持
--with-jpeg-dir 打开对jpeg图片的支持
--with-png-dir 打开对png图片的支持
--with-freetype-dir 打开对freetype字体库的支持
--with-iconv iconv函数,种字符集间的转换
--with-libXML-dir 打开libxml2库的支持
--with-XMLrpc 打开xml-rpc的c语言
--with-zlib-dir 打开zlib库的支持
--with-gd 打开gd库的支持
--enable-gd-native-ttf 支持TrueType字符串函数库
--with-curl 打开curl浏览工具的支持
--with-curlwrappers 运用curl工具打开url流
--with-ttf 打开freetype1.*的支持,可以不加了
--with-xsl 打开XSLT 文件支持,扩展了libXML2库 ,需要libxslt软件
--with-gettext 打开gnu 的gettext 支持,编码库用到
--with-pear 打开pear命令的支持,PHP扩展用的
--enable-calendar 打开日历扩展功能
--enable-mbstring 多字节,字符串的支持
--enable-bcmath 打开图片大小调整,用到zabbix监控的时候用到了这个模块
--enable-sockets 打开 sockets 支持
--enable-exif 图片的元数据支持
--enable-magic-quotes 魔术引用的支持
--disable-rpath 关闭额外的运行库文件
--disable-debug 关闭调试模式
--enable-fpm 打上PHP-fpm 补丁后才有这个参数,CGI方式安装的启动程序
--enable-zip //打开对zip的支持
--enable-ftp //打开ftp的支持
--with-mcrypt 算法
--with-mhash 算法
--with-openssl
configure: error: libjpeg.(a|so) not found.
ln -s /usr/lib64/libjpeg.so /usr/lib/libjpeg.so
configure: error: libpng.(a|so) not found.
ln -s /usr/lib64/libpng.so /usr/lib/libpng.so
make && make install
cp php.ini-production /usr/local/php/lib/php.ini
cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf //复制配置文件
mkdir -p /usr/local/php/log/
vim /usr/local/php/etc/php-fpm.conf
[global]
error_log = /usr/local/php/log/error.log
log_level = warning
[www]
user = www
group = www
listen = 127.0.0.1:9000
pm = dynamic
pm.max_children = 2000
pm.start_servers = 10
pm.min_spare_servers = 5
pm.max_spare_servers = 200
pm.max_requests = 12000
pm.process_idle_timeout = 10s
request_terminate_timeout = 300s
request_slowlog_timeout = 10s
slowlog = /usr/local/php/log/slow.log
/usr/local/php/sbin/php-fpm –t //检查语法是否正确
cd php-5.3.28/sapi/fpm/
cp init.d.php-fpm /etc/init.d/php-fpm
chmod 700 /etc/init.d/php-fpm
chkconfig --add php-fpm
chkconfig php-fpm on
netstat -ntlp |grep 9000
killall php-fpm
service php-fpm restart
vim /usr/local/php/lib/php.ini
upload_max_filesize = 5M //文件上传的大小
memory_limit = 5120M //启用了内存限制
post_max_size = 100M //允许POST的数据最大
date.timezone = PRC 设置时区
expose_php = Off 关闭php彩蛋
配置PHP支持zlib
cd /root/php-5.3.28/ext/zlib
cp config0.m4 config.m4
/usr/local/php/bin/phpize //命令是用来准备 PHP 外挂模块的编译环境的
./configure --with-php-config=/usr/local/php/bin/php-config
make && make install
vim /usr/local/php/lib/php.ini
extension_dir = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/" //修改
extension=zlib.so //添加
service php-fpm restart
配置PHP支持openssl
yum install openssl openssl-devel
cd /root/php-5.3.28/ext/openssl
cp config0.m4 config.m4
/usr/local/php/bin/phpize //命令是用来准备 PHP 外挂模块的编译环境的
./configure --with-php-config=/usr/local/php/bin/php-config
make && make install
vim /usr/local/php/lib/php.ini
extension_dir = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/" //修改
extension= openssl.so //添加
service php-fpm restart
配置PHP支持mysqli
cd /root/php-5.3.28/ext/mysqli
/usr/local/php/bin/phpize //命令是用来准备 PHP 外挂模块的编译环境的
./configure --with-php-config=/usr/local/php/bin/php-config --with-mysqli=/usr/local/mysql/bin/mysql_config
make && make install
vim /usr/local/php/lib/php.ini
extension_dir = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/" //修改
extension= openssl.so //添加
service php-fpm restart
PHP支持pdo_mysql
cd /root/php-5.3.28/ext/pdo_mysql
/usr/local/php/bin/phpize //命令是用来准备 PHP 外挂模块的编译环境的
./configure --with-php-config=/usr/local/php/bin/php-config --with-pdo-mysql=mysqlnd
make && make install
vim /usr/local/php/lib/php.ini
extension_dir = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/" //修改
extension=pdo_mysql.so //添加
service php-fpm restart
配置PHP支持redis
去http://pecl.php.net/package/redis 下载最新
wget http://pecl.php.net/get/redis-2.2.7.tgz
tar zxvf redis-2.2.7.tgz
cd redis-2.2.7
/usr/local/php/bin/phpize //命令是用来准备 PHP 外挂模块的编译环境的
./configure -with-php-config=/usr/local/php/bin/php-config
make && make install
vim /usr/local/php/lib/php.ini
extension_dir = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/" //修改
extension_dir = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20121212/" //修改
extension=redis.so //添加
service php-fpm restart
配置PHP支持APC
去http://pecl.php.net/package/apc 下载最新APC-3.1.13.tgz
wget http://pecl.php.net/get/APC-3.1.13.tgz
tar zxvf APC-3.1.13.tgz //解压
cd APC-3.1.13
/usr/local/php/bin/phpize //命令是用来准备 PHP 外挂模块的编译环境的
./configure --enable-apc --enable-apc-spinlocks --disable-apc-pthreadmutex --with-php-config=/usr/local/php/bin/php-config
make && make install
vim /usr/local/php/lib/php.ini
extension_dir = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/" //修改
extension=apc.so //添加
apc.enabled = 1
apc.shm_size = 64M
apc.stat = 1
service php-fpm restart
配置PHP支持phalcon
去https://github.com/phalcon/cphalcon 下载最新master.zip
wget https://github.com/phalcon/cphalcon/archive/master.zip
unzip master.zip //解压
cd cphalcon-master/build/64bits
make clean
/usr/local/php/bin/phpize --clean
/usr/local/php/bin/phpize //命令是用来准备 PHP 外挂模块的编译环境的
./configure -with-php-config=/usr/local/php/bin/php-config
make && make install
vim /usr/local/php/lib/php.ini
extension_dir = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/" //修改
extension=phalcon.so //添加
service php-fpm restart
配置PHP支持gmagick
wget http://cznic.dl.sourceforge.net/project/giflib/giflib-5.1.0.tar.gz
tar zxvf giflib-5.1.0.tar.gz
cd giflib-5.1.0
./configure --prefix=/usr/local/giflib
make && make install
wget http://webp.googlecode.com/files/libwebp-0.4.0.tar.gz
tar zxvf libwebp-0.4.0.tar.gz
cd libwebp-0.4.0
./configure --prefix=/usr/local/libwep --with-gifincludedir=/usr/local/giflib/include/ --with-giflibdir=/usr/local/giflib/lib/
make && make install
去http://www.graphicsmagick.org/download.html 下载最新版本
wget -c http://jaist.dl.sourceforge.net/project/graphicsmagick/graphicsmagick/1.3.21/GraphicsMagick-1.3.21.tar.gz
tar zxvf GraphicsMagick-LATEST.tar.gz
cd GraphicsMagick-1.3.20/
./configure --prefix=/usr/local/gmagick --enable-shared CPPFLAGS='-I/usr/local/libwep/include' LDFLAGS='-L/usr/local/libwep/lib'
make && make install
cp /usr/local/gmagick/bin/gm /usr/bin/
wget http://pecl.php.net/get/gmagick-1.1.7RC3.tgz //http://pecl.php.net/package/gmagick
tar zxvf gmagick-1.1.7RC3.tgz
cd gmagick-1.1.7RC3
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config --with-gmagick=/usr/local/gmagick
make && make install
vim /usr/local/php/lib/php.ini
extension=gmagick.so
配置PHP支持SSH2
yum install openssl openssl-devel
去http://www.libssh2.org/download/ 下载最新libssh2-1.4.3.tar.gz
wget http://www.libssh2.org/download/libssh2-1.4.3.tar.gz
tar zxvf libssh2-1.4.3.tar.gz
cd libssh2-1.4.3
./configure --prefix=/usr/local/libssh2
make && make install
wget http://pecl.php.net/get/ssh2-0.12.tgz
tar zxvf ssh2-0.12.tgz
cd ssh2-0.12
/usr/local/php/bin/phpize
./configure --prefix=/usr/local/ssh2 --with-ssh2=/usr/local/libssh2 --with-php-config=/usr/local/php/bin/php-config
make && make install
vim /usr/local/php/lib/php.ini
extension_dir = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/" //修改
extension=ssh2.so //添加
service php-fpm restart
配置PHP支持pthreads
去http://pecl.php.net/package/pthreads 下载最新
wget http://pecl.php.net/get/pthreads-2.0.10.tgz
tar zxvf pthreads-2.0.10.tgz
cd cd pthreads-2.0.10
/usr/local/php/bin/phpize
./configure -with-php-config=/usr/local/php/bin/php-config
make && make install
vim /usr/local/php/lib/php.ini
extension_dir = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/" //修改
extension=pthreads.so //添加
service php-fpm restart
配置PHP支持xsplit
去https://github.com/chopins/php-xsplit 下载最新
wget https://github.com/chopins/php-xsplit/archive/master.zip
unzip master.zip
cd php-xsplit-master
/usr/local/php/bin/phpize //命令是用来准备 PHP 外挂模块的编译环境的
./configure -with-php-config=/usr/local/php/bin/php-config
make && make install
vim /usr/local/php/lib/php.ini
extension_dir = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/" //修改
extension=xsplit.so //添加
service php-fpm restart
配置PHP支持sphinx
cd /mnt/tools/coreseek-4.1-beta/csft-4.1/api/libsphinxclient
aclocal
libtoolize --force 我运行后有一个错误,没管它。
automake --add-missing && autoconf && autoheader
make clean
./configure
make && make install
wget http://pecl.php.net/get/sphinx-1.3.2.tgz //下载最新的sphinx扩展包
tar zxvf sphinx-1.3.2.tgz //解压
cd sphinx-1.3.2
/usr/local/php/bin/phpize //命令是用来准备 PHP 外挂模块的编译环境的
./configure -with-php-config=/usr/local/php/bin/php-config
make && make install
vim /usr/local/php/lib/php.ini
extension_dir = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/" //修改
extension= sphinx.so //添加
service php-fpm restart
配置PHP支持mongoDB
去http://pecl.php.net/package/mongo 下载最新mongo-1.6.8.tgz
wget http://pecl.php.net/get/mongo-1.6.8.tgz
tar zxvf mongo-1.6.8.tgz
cd mongo-1.6.8
/usr/local/php/bin/phpize
./configure -with-php-config=/usr/local/php/bin/php-config
make && make install
vim /usr/local/php/lib/php.ini
extension_dir = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/" //修改
extension=mongo.so //添加
service php-fpm restart
相关文章
- 如何通过xhprof分析性能
使用方法 xhprof_enable(); /** ... 要检查的php代码 ... **/ $xhprof_data = xhprof_disable(); // 引入xhprof_lib i
- LUMEN API Controller 规范
1. 第三方依赖库规范 在使用LUMEN实现API接口时,以下库必须需要包含在composer包依赖中,以实现代码编写的一些规范 dingo/api : 实现API接口库 vlucas/phpdo
- PHP文件锁
共享锁(LOCK_SH) 什么时候加共享锁? 当在读取数据的时候同时进行着其他的写操作,这个时候需要对文件加共享锁,否则无论有没有对写操作加写锁都会写入成功,导致数据不一致 当文件获得共享锁时,其他
- Hello-Risen-程序
首先需要说明的是,您下载到的文件包含两部分,其中src中是开发源码,用于对Risen框架本身的开发,risen 目录中是通过源码生成的包含debug和release版本的框架程序,用于您应用程序的开发
- PHP自定义类示例(Weixin消息解析类)
PHP自定义类示例(Weixin消息解析类) /** * Created by Qingger. * User: jsspf * Date: 2017/3/24 * Time: 10:50
随机推荐
- 如何通过xhprof分析性能
使用方法 xhprof_enable(); /** ... 要检查的php代码 ... **/ $xhprof_data = xhprof_disable(); // 引入xhprof_lib i
- LUMEN API Controller 规范
1. 第三方依赖库规范 在使用LUMEN实现API接口时,以下库必须需要包含在composer包依赖中,以实现代码编写的一些规范 dingo/api : 实现API接口库 vlucas/phpdo
- PHP文件锁
共享锁(LOCK_SH) 什么时候加共享锁? 当在读取数据的时候同时进行着其他的写操作,这个时候需要对文件加共享锁,否则无论有没有对写操作加写锁都会写入成功,导致数据不一致 当文件获得共享锁时,其他
- Hello-Risen-程序
首先需要说明的是,您下载到的文件包含两部分,其中src中是开发源码,用于对Risen框架本身的开发,risen 目录中是通过源码生成的包含debug和release版本的框架程序,用于您应用程序的开发
- PHP自定义类示例(Weixin消息解析类)
PHP自定义类示例(Weixin消息解析类) /** * Created by Qingger. * User: jsspf * Date: 2017/3/24 * Time: 10:50