php编译安装与常用扩展安装

技术文档网 2021-04-16

安装配置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 installhttp://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

相关文章

  1. 如何通过xhprof分析性能

    使用方法 xhprof_enable(); /** ... 要检查的php代码 ... **/ $xhprof_data = xhprof_disable(); // 引入xhprof_lib i

  2. LUMEN API Controller 规范

    1. 第三方依赖库规范 在使用LUMEN实现API接口时,以下库必须需要包含在composer包依赖中,以实现代码编写的一些规范 dingo/api : 实现API接口库 vlucas/phpdo

  3. PHP文件锁

    共享锁(LOCK_SH) 什么时候加共享锁? 当在读取数据的时候同时进行着其他的写操作,这个时候需要对文件加共享锁,否则无论有没有对写操作加写锁都会写入成功,导致数据不一致 当文件获得共享锁时,其他

  4. Hello-Risen-程序

    首先需要说明的是,您下载到的文件包含两部分,其中src中是开发源码,用于对Risen框架本身的开发,risen 目录中是通过源码生成的包含debug和release版本的框架程序,用于您应用程序的开发

  5. PHP自定义类示例(Weixin消息解析类)

    PHP自定义类示例(Weixin消息解析类) /** * Created by Qingger. * User: jsspf * Date: 2017/3/24 * Time: 10:50

随机推荐

  1. 如何通过xhprof分析性能

    使用方法 xhprof_enable(); /** ... 要检查的php代码 ... **/ $xhprof_data = xhprof_disable(); // 引入xhprof_lib i

  2. LUMEN API Controller 规范

    1. 第三方依赖库规范 在使用LUMEN实现API接口时,以下库必须需要包含在composer包依赖中,以实现代码编写的一些规范 dingo/api : 实现API接口库 vlucas/phpdo

  3. PHP文件锁

    共享锁(LOCK_SH) 什么时候加共享锁? 当在读取数据的时候同时进行着其他的写操作,这个时候需要对文件加共享锁,否则无论有没有对写操作加写锁都会写入成功,导致数据不一致 当文件获得共享锁时,其他

  4. Hello-Risen-程序

    首先需要说明的是,您下载到的文件包含两部分,其中src中是开发源码,用于对Risen框架本身的开发,risen 目录中是通过源码生成的包含debug和release版本的框架程序,用于您应用程序的开发

  5. PHP自定义类示例(Weixin消息解析类)

    PHP自定义类示例(Weixin消息解析类) /** * Created by Qingger. * User: jsspf * Date: 2017/3/24 * Time: 10:50