一、源代码安装

1.编译安装

./configure  --prefix=/usr/local/php\
--with-config-file-path=/usr/local/php/etc --with-bz2 --with-curl \
--enable-ftp --enable-sockets --disable-ipv6 --with-gd \
--with-jpeg-dir=/usr/local --with-png-dir=/usr/local \
--with-freetype-dir=/usr/local --enable-gd-native-ttf \
--with-iconv-dir=/usr/local --enable-mbstring --enable-calendar \
--with-gettext --with-libxml-dir=/usr/local --with-zlib \
--with-pdo-mysql=mysqlnd --with-mysqli=mysqlnd --with-mysql=mysqlnd \
--enable-dom --enable-xml --enable-fpm --with-libdir=lib64 --enable-bcmath
make && make install

2.错误处理

[ERROR]-1

checking for ZLIB support... no
checking if the location of ZLIB install directory is defined... yes
configure: error: Cannot find libz

[ERROR]-2

checking whether to enable JIS-mapped Japanese font support in GD... no
If configure fails try --with-vpx-dir=<DIR>
configure: error: jpeglib.h not found.

【解决的方法】

wget http://www.boutell.com/gd/http/gd-2.0.33.tar.gz
tar zxvf gd-2.0.33.tar.gz
cd gd-2.0.33
./configure --prefix=/usr/local/gd2
make
make instal

libjpeg,能够用这个库实现JPG图片的各种操作;下载:
http://freeware.sgi.com/source/libjpeg/libjpeg-6b.tar.gz,
參考README安装库。大体过程例如以下:

./configure
Make
Make install

[ERROR]-3

If configure fails try --with-xpm-dir=<DIR>
configure: error: freetype-config not found.

[ERROR]-4

checking whether to enable JIS-mapped Japanese font support in GD... no
configure: error: vpx_codec.h not found.

[Bzip2 Install]

tar -xzvf bzip2-1.0.6.tar.gz

进入解压后的文件夹:cd bzip2-1.0.6
为编译做准备。创建libbz2.so动态链接库(这一步非常重要,安装python的时候假设没有这一步,python安装不上bz2模块):

make -f Makefile-libbz2_so

编译安装: make && make install

二、RPM安装

[root@kallen ~]# rpm -ivh php-common-5.4.40-1.el6.remi.x86_64.rpm
warning: php-common-5.4.40-1.el6.remi.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 00f97f56: NOKEY
Preparing...                ########################################### [100%]
file /etc/php.ini from install of php-common-5.4.40-1.el6.remi.x86_64 conflicts with file from package php-common-5.3.3-26.el6.x86_64
file /usr/lib64/php/modules/curl.so from install of php-common-5.4.40-1.el6.remi.x86_64 conflicts with file from package php-common-5.3.3-26.el6.x86_64
file /usr/lib64/php/modules/fileinfo.so from install of php-common-5.4.40-1.el6.remi.x86_64 conflicts with file from package php-common-5.3.3-26.el6.x86_64
file /usr/lib64/php/modules/json.so from install of php-common-5.4.40-1.el6.remi.x86_64 conflicts with file from package php-common-5.3.3-26.el6.x86_64
file /usr/lib64/php/modules/phar.so from install of php-common-5.4.40-1.el6.remi.x86_64 conflicts with file from package php-common-5.3.3-26.el6.x86_64
file /usr/lib64/php/modules/zip.so from install of php-common-5.4.40-1.el6.remi.x86_64 conflicts with file from package php-common-5.3.3-26.el6.x86_64error: Failed dependencies:libmysqlclient.so.18()(64bit) is needed by php-mysql-5.4.40-1.el6.remi.x86_64libmysqlclient.so.18(libmysqlclient_16)(64bit) is needed by php-mysql-5.4.40-1.el6.remi.x86_64libmysqlclient.so.18(libmysqlclient_18)(64bit) is needed by php-mysql-5.4.40-1.el6.remi.x86_64

三、YUM安装

1.PHP-5.4

php5.4于2012年5月8号公布,从php5.4.0開始php增加了一些新特色如:

  • Traits支持
  • 内置了一个简单的Webserver
  • 提供了数组简短语法
  • 直接对函数返回值进行数组取值
  • 终于删除魔术方法及安全模式

推荐使用 Webtatic EL6的YUM源来安装php5.4。我们首先安装Webtatic EL6 YUM源,关于YUM源的安装配置请參考《在RHEL6中配置YUM源》一文;

rpm -Uvh http://repo.webtatic.com/yum/el6/latest.rpm  
yum -y install php54w php54w-bcmath php54w-cli \
php54w-common php54w-devel php54w-fpm php54w-gd \
php54w-imap php54w-ldap php54w-mbstring php54w-mcrypt \
php54w-mysql php54w-odbc php54w-pdo php54w-pear \
php54w-pecl-igbinary php54w-xml php54w-xmlrpc \
php54w-opcache php54w-intl php54w-pecl-memcache 

假设安装失败,建议您先卸载曾经的php再进行安装,使用

 yum remove php php-*

附带的php扩展列表:

Package Provides
php54w mod_php
php54w-bcmath
php54w-cli php-cgi, php-pcntl, php-readline
php54w-common php-api, php-bz2, php-calendar, php-ctype, php-curl, php-date, php-exif, php-fileinfo, php-ftp, php-gettext, php-gmp, php-hash, php-iconv, php-json, php-libxml, php-openssl, php-pcre, php-pecl-Fileinfo, php-pecl-phar, php-pecl-zip, php-reflection, php-session, php-shmop, php-simplexml, php-sockets, php-spl, php-tokenizer, php-zend-abi, php-zip, php-zlib
php54w-dba
php54w-devel
php54w-embedded php-embedded-devel
php54w-enchant
php54w-fpm
php54w-gd
php54w-imap
php54w-interbase php_database, php-firebird
php54w-intl
php54w-ldap
php54w-mbstring
php54w-mcrypt
php54w-mssql
php54w-mysql php-mysqli, php_database
php54w-odbc php-pdo_odbc, php_database
php54w-pdo
php54w-pgsql php-pdo_pgsql, php_database
php54w-process php-posix, php-sysvmsg, php-sysvsem, php-sysvshm
php54w-pspell
php54w-recode
php54w-snmp
php54w-soap
php54w-tidy
php54w-xml php-dom, php-domxml, php-wddx, php-xsl
php54w-xmlrpc
php54w-zts

[root@kallen ~]# yum install php54w-gd.x86_64
Loaded plugins: product-id, security, subscription-manager
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package php54w-gd.x86_64 0:5.4.41-1.w6 will be installed
--> Processing Dependency: libt1.so.5()(64bit)for package: php54w-gd-5.4.41-1.w6.x86_64
--> Finished Dependency Resolution
Error: Package: php54w-gd-5.4.41-1.w6.x86_64 (webtatic)Requires:libt1.so.5()(64bit)You could try using --skip-broken to work around the problemYou could try running: rpm -Va --nofiles --nodigest

解决的方法:

[root@kallen ~]# rpm -ivh t1lib-5.1.2-6.el6_2.1.x86_64.rpm
warning: t1lib-5.1.2-6.el6_2.1.x86_64.rpm: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY
Preparing...                ########################################### [100%]1:t1lib                   ########################################### [100%]

2.PHP-5.5

[root@kallen ~]# yum remove php  php-bcmath php-cli php-common  php-devel php-fpm    php-gd php-imap  php-ldap php-mbstring php-mcrypt php-mysql   php-odbc   php-pdo   php-pear  php-pecl-igbinary  php-xml php-xmlrpc
[root@kallen ~]# yum install php55w  php55w-bcmath php55w-cli php55w-common  php55w-devel php55w-fpm    php55w-gd php55w-imap  php55w-ldap php55w-mbstring php55w-mcrypt php55w-mysql   php55w-odbc   php55w-pdo   php55w-pear  php55w-pecl-igbinary  php55w-xml php55w-xmlrpc php55w-opcache php55w-intl php55w-pecl-memcache

四、版本号測试

1.查看PHP版本号信息

(1) 查看版本号号

kallen@kallen:~$ php -v
PHP 5.5.9-1ubuntu4.11 (cli) (built: Jul  2 2015 15:23:08)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2014 Zend Technologieswith Zend OPcache v7.0.3, Copyright (c) 1999-2014, by Zend Technologies 

(2) 查看安装信息
在Apache的document root文件夹下编辑測试页面index.php。内容例如以下:

<?phpphpinfo();
?>

通过http://localhost:port/php/index.php訪问:

2.查看PHP已安装模块

kallen@kallen:~$php -m
[PHP Modules]
bcmath
bz2
calendar
Core
ctype
date
dba
dom
ereg
exif
fileinfo
filter
ftp
gd
gettext
hash
iconv
json
ldap
libxml
mbstring
mhash
mysql
mysqli
openssl
pcntl
pcre
PDO
pdo_mysql
pdo_pgsql
pgsql
Phar
posix
readline
Reflection
session
shmop
SimpleXML
soap
sockets
SPL
standard
sysvmsg
sysvsem
sysvshm
tokenizer
wddx
xml
xmlreader
xmlwriter
Zend OPcache
zip
zlib[Zend Modules]
Zend OPcache 

3.MySQL连接測试

<?php$link=mysql_connect('localhost','root','*');if(!$link)echo "Connection Error!";elseecho "Connected Successfully!"mysql_close();
?

>

未完续待。

LNMP环境搭建——PHP篇相关推荐

  1. CentOS6.x 下 LNMP环境搭建(二、安装 Nginx)

    为什么80%的码农都做不了架构师?>>>    CentOS6.x 下 LNMP环境搭建(准备篇) CentOS6.x 下 LNMP环境搭建(一.安装 MySQL) CentOS6. ...

  2. [Java] Web开发环境搭建 - MyEclipse 篇

    Web开发环境搭建 - MyEclipse 篇 在前面,我们讲了使用 Eclipse Java EE 来搭建 Java Web 应用程序开发环境. 现在来说下比较流行的 MyEclipse 又是如何搭 ...

  3. Golang开发环境搭建-Vim篇

    Golang开发环境搭建-Vim篇 转自:http://tonybai.com/2014/11/07/golang-development-environment-for-vim/ 虽说sublime ...

  4. lamp 独立mysql_lamp or lnmp 环境搭建之独立安装mysql数据库

    lamp or lnmp 环境搭建,如果mysql 是独立安装的则需要授权: 单独一台服务器独立安装mysql 安装后,优化服务器. 授权 实例如下: 创建用户 CREATE USER demo ID ...

  5. ngnix之lnmp环境搭建及Dvbbs搭建

    LNMP环境搭建 引导语:前面我们做过LAMP环境的搭建,而对于后起之秀nginx而言,其性能相对apache提高了很多, 故本实验借助于nginx来LNMP环境, 环境搭建分三步:mysql绿色包安 ...

  6. LNMP环境搭建 centos7 nginx1.12 mysql5.6 php7

    经过一番折腾,终于将LNMP环境搭建完成了.本文介绍的LNMP环境是在windows的Oracle VM VirtualBox中的Centos虚拟机上搭建的,各个软件的版本为:Centos7 + Ng ...

  7. LNMP环境搭建之编译安装指南(php-5.3.27.tar.gz)

    测试环境:CentOS release 6.5 (Final) 软件安装:nginx   mysql-5.5.32-linux2.6-x86_64.tar.gz   php-5.3.27.tar.gz ...

  8. Linux运维之(九)LNMP环境搭建

    LNMP环境搭建 安装步骤 [root@localhost gohb]# yum -y install php php-fpm php-gd php-mbstring php-xml php-imap ...

  9. 拔牙伤己600——LNMP环境搭建(Kali、宝塔)

    Web安全1.2:LAMP.LNMP环境搭建(Kali.宝塔.phpstudy)+wordpress站点搭建 声明:本次实验环境为Kali2020+VMware16Pro,使用的浏览器为火狐浏览器.建 ...

最新文章

  1. Redis初学:6(List类型)
  2. 保证同一个账号同时只能在一个设备上登录
  3. Android Scroller简单用法
  4. 内存扩展算法 linux,Linux下内存的使用率正确的算法
  5. C++容器 bitset
  6. 记录 之 Argparse 中的 可选参数 action 用法
  7. Angular ngOnChanges hook学习笔记
  8. Shell 脚本知识回顾 (六) —— Shell 函数
  9. 西部数码 php.ini,如何修改PHP的memory_limit限制
  10. hdu4857 拓扑排序
  11. 什么是探索性测试?探索性测试有哪些方法?
  12. elementUI_drawer踩坑_抽屉关闭问题
  13. 爬取豆瓣 TOP250 电影排行榜
  14. sap系统中的batch_SAP 批次管理(Batch management)配置介绍
  15. 数学归纳法及例题分析
  16. java面试笔记整理
  17. 简单易用的JQuery网页内容打印插件——jQuery.print.js
  18. Win8.1RTM Pro电话激活
  19. VMware发表新版桌面虚拟化软件View 3
  20. 芯片的发展现状以及未来发展趋势

热门文章

  1. 基于epoll实现一个IO多路复用的回声服务器
  2. 在GitHub上使用Hexo 搭建自己的博客
  3. JavaScript PHP模仿C#中string.format效果
  4. Java如何调用dll
  5. 通过几个例子看sed的模式空间与保持空间
  6. Atitit 常用sdk 模块 组织架构切分 规范与范例attilax总结
  7. Html篇-fieldset标签演示
  8. 初涉程序员之路的感悟
  9. Debian读写ntfs分区格式!
  10. 使用脚本将数据从辅助数据源传送到 InfoPath 域