北京SEO

linux下php 5.4.* 编译安装步骤详解

2019/10/10/17:45:22  阅读:1845  来源:谷歌SEO算法  标签: 谷歌CEO

php 5.4.* 编译安装小编觉得是有点多余了,因为使用常规安装其实非常 的快了,但编译安装会比较好一些了,下面一起来看看linux中php 5.4.* 编译安装步骤.

据说php5.4要比此前各版本的php快不少,所以有必要安装来测试一下,国内比较流行的一些php程序比如discuz等等对php5.4的支持貌似还不太友好,所以站长朋友们还是要慎重升级,下面是在64位centos6.1上面编译安装的笔记,仅供参考.

1、下载

  1. wgethttp://cn.php.net/get/php-5.4.8.tar.gz/from/this/mirror
  2. wgethttp://pecl.php.net/get/memcache-2.2.7.tgz
  3. wgethttp://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.14.tar.gz
  4. wgethttps://github.com/downloads/libevent/libevent/libevent-2.0.20-stable.tar.gz
  5. wgethttps://memcached.googlecode.com/files/memcached-1.4.15.tar.gz
  6. wget"http://downloads.sourceforge.net/mcrypt/libmcrypt-2.5.8.tar.gz?modtime=1171868460&big_mirror=0"
  7. wget"http://downloads.sourceforge.net/mcrypt/mcrypt-2.6.8.tar.gz?modtime=1194463373&big_mirror=0"//phpfensi.com
  8. wgetftp://ftp.kddlabs.co.jp/graphics/ImageMagick/ImageMagick.tar.gz
  9. wget"http://downloads.sourceforge.net/mhash/mhash-0.9.9.9.tar.gz?modtime=1175740843&big_mirror=0"
  10. wgethttp://pecl.php.net/get/imagick-3.1.0RC2.tgz

2、另外一些准备工作

ln -s /usr/local/mysql/lib/libmysqlclient.so.18 /usr/lib64/ 假定mysql已经安装,不加这个的话后面编译的时候可能会出错.

ln -s /usr/local/mysql/lib/libmysqlclient.so.18 /usr/lib64/ 假定mysql已经安装,不加这个的话后面编译的时候可能会出错.

  1. yuminstallncurses-devellibxml2-develbzip2-devellibcurl-develcurl-devellibjpeg-devellibpng-develfreetype-develnet-snmp-devel-y
  2. ln-s/usr/local/mysql/lib/libmysqlclient.so.18/usr/lib64///phpfensi.com

假定mysql已经安装,不加这个的话后面编译的时候可能会出错.

3、还有这些准备工作,编译一些php需要用到的支持库.

  1. tarxzvflibic*
  2. cdlibic*
  3. ./configure--prefix=/usr/local
  4. make
  5. makeinstall
  6. cd..
  7. tarxzvflibmcry*
  8. cdlibmcry*
  9. ./configure
  10. make
  11. makeinstall
  12. /sbin/ldconfig
  13. cdlibltdl/
  14. ./configure
  15. --enable-ltdl-install
  16. make
  17. makeinstall
  18. cd../../
  19. tarzxvfmhash-0.9.9.9.tar.gz
  20. cdmhash-0.9.9.9/
  21. ./configure
  22. make
  23. makeinstall
  24. cd../
  25. ln-s/usr/local/lib/libmcrypt.la/usr/lib/libmcrypt.la
  26. ln-s/usr/local/lib/libmcrypt.so/usr/lib/libmcrypt.so
  27. ln-s/usr/local/lib/libmcrypt.so.4/usr/lib/libmcrypt.so.4
  28. ln-s/usr/local/lib/libmcrypt.so.4.4.8/usr/lib/libmcrypt.so.4.4.8
  29. ln-s/usr/local/lib/libmhash.a/usr/lib/libmhash.a
  30. ln-s/usr/local/lib/libmhash.la/usr/lib/libmhash.la
  31. ln-s/usr/local/lib/libmhash.so/usr/lib/libmhash.so
  32. ln-s/usr/local/lib/libmhash.so.2/usr/lib/libmhash.so.2
  33. ln-s/usr/local/lib/libmhash.so.2.0.1/usr/lib/libmhash.so.2.0.1
  34. ln-s/usr/local/bin/libmcrypt-config/usr/bin/libmcrypt-config
  35. tarzxvfmcrypt-2.6.8.tar.gz
  36. cdmcrypt-2.6.8/
  37. /sbin/ldconfig
  38. ./configure
  39. make
  40. makeinstall
  41. cd../

4、开始编译安装php

  1. tarxvzfphp-5.4.*.tar.gzcdphp-5.4.*
  2. ./configure--prefix=/usr/local/php--with-config-file-path=/etc\
  3. --with-mysql=/usr/local/mysql/--with-mysqli=/usr/local/mysql/bin/mysql_config\
  4. --with-pdo-mysql=/usr/local/mysql/--with-iconv-dir=/usr/local--enable-fpm\
  5. --disable-phar--with-fpm-user=www--with-fpm-group=www--with-pcre-regex\
  6. --with-zlib--with-bz2--enable-calendar--with-curl--enable-dba--with-libxml-dir\
  7. --enable-ftp--with-gd--with-jpeg-dir--with-png-dir--with-zlib-dir--with-freetype-dir\
  8. --enable-gd-native-ttf--enable-gd-jis-conv--with-mhash--enable-mbstring--with-mcrypt\
  9. --enable-pcntl--enable-xml--disable-rpath--enable-shmop--enable-sockets--enable-zip\
  10. --enable-bcmath--with-snmp--disable-ipv6
  11. makeZEND_EXTRA_LIBS='-liconv'
  12. maketest
  13. makeinstall
  14. cpphp.ini-production/etc/php.ini

5、编译安装php的一些扩展模块

  1. tarzxvfmemcache-*.tgz
  2. cdmemcache-*/
  3. /usr/local/php/bin/phpize
  4. ./configure--with-php-config=/usr/local/php/bin/php-config
  5. make
  6. makeinstall
  7. cd../
  8. tarxzvflibevent*
  9. cdlibevent*
  10. ./configure--prefix=/usr/local
  11. make
  12. makeinstall
  13. cd..
  14. tarxvzfmemcached-*.gz
  15. cdmemcached-*
  16. ./configure--with-libevent=/usr/local--prefix=/usr/local/memcached
  17. make
  18. makeinstall
  19. cd../
  20. tarzxvfImageMagick.tar.gz
  21. cdImageMagick-*/
  22. ./configure
  23. make
  24. makeinstall
  25. cd../
  26. tarzxvfimagick-*.tgz
  27. cdimagick-*/
  28. exportPKG_CONFIG_PATH=/usr/local/lib/pkgconfig//usr/local/php/bin/phpize
  29. ./configure--with-php-config=/usr/local/php/bin/php-config
  30. make
  31. makeinstall
  32. cd../

6、修改php的一些参数配置

vi /etc/php.ini

增加这些:

  1. extension_dir=/usr/local/php/lib/php/extensions/no-debug-non-zts-20100525/
  2. extension="memcache.so"
  3. extension="imagick.so"

修改这些:cgi.fix_pathinfo=0

服务器安装好php之后,出于安全考虑,需要禁用掉一些有潜在危险的php函数,下面这些函数如果没有特殊需要,可以禁用掉:

  1. exec,system,phpinfo,eval,passthru,chroot,scandir,chgrp,chown,shell_exec,proc_open,proc_get_status,ini_alter,ini_alter,ini_restore,dl,pfsockopen,fsocket,fsockopen,openlog,syslog,readlink,symlink,popepassthru,stream_socket_server

禁用方法:修改php.ini,找到disable_functions,修改为:

  1. disable_functions=exec,system,phpinfo,eval,passthru,chroot,scandir,chgrp,chown,shell_exec,proc_open,proc_get_status,ini_alter,ini_alter,ini_restore,dl,pfsockopen,fsocket,fsockopen,openlog,syslog,readlink,symlink,popepassthru,stream_socket_server

广告内容

linux下php 5.4.* 编译安装步骤详解 linux下php 5.4.* 编译安装步骤详解 linux下php 5.4.* 编译安装步骤详解

相关阅读

热门评论

卢松松博客 卢松松博客

关注创业者、自媒体人和站长的网站

总篇数167

精选文章

RMAN中catalog和nocatalog区别介绍 小技巧:为Linux下的文件分配多个权限 zimbra8.5.1安装第三方签名ssl证书的步骤 解决mysql不能远程连接数据库方法 windows服务器mysql增量备份批处理数据库 mysql中slow query log慢日志查询分析 JavaScript跨域问题总结 Linux下负载均衡软件LVS配置(VS/DR)教程 mysql中权限参数说明 MYSQL(错误1053)无法正常启动

SEO最新算法