目录
Linux PHP5.3升级PHP5.5.33,php5.3php5.5.33
首页 php教程 php手册 Linux PHP5.3升级PHP5.5.33,php5.3php5.5.33

Linux PHP5.3升级PHP5.5.33,php5.3php5.5.33

Jun 13, 2016 am 08:43 AM
php5

Linux PHP5.3升级PHP5.5.33,php5.3php5.5.33

由于要使用了laravel5.1,php要升级到5.5以上。具体环境是Aliyun Cent OS 7.0。由于阿里的yum源lastest只有5.4,laravel5.1必须php5.5,加了几个网上的yum源,各种各样的问题,所以只能麻烦的编译安装了。

首先网上这类的文章非常多,每个人的升级目的,要升级的组件都不完全一样。最好的说明文档还是官方安装文档,如果php官网的安装失败,再去搜索相关问题。我最终靠的是官网上Apache 2.x on Unix systems这篇文档。

1.下载

http://php.net/downloads.php

<span>1</span> <span>wget</span> http:<span>//</span><span>cn2.php.net/get/php-5.5.33.tar.gz/from/this/mirror</span>
<span>2</span> <span>#下载完改一下名字
</span><span>3</span> <span>mv</span> mirror php-<span>5.5</span>.<span>33</span>.<span>tar</span><span>.gz
</span><span>4</span> <span>tar</span> -zxf php-<span>5.5</span>.<span>33</span>.<span>tar</span>.gz php-<span>5.5</span>.<span>33</span>
<span>5</span> cd php-<span>5.5</span>.<span>33</span>
登录后复制

2.编译安装

#这一步出错了#############################<br />./configure --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql<br />#这一步出错率#############################
登录后复制

我在--with-apxs2=/usr/local/apache2/bin/apxs这一步出了问题,去掉这个参数即使安装也是不行,这个参数编译出libphp5.so并用在httpd.conf中,find / -name apxs2搜不到结果。我找了很久,发现是我的apache有问题,不知道为什么5.3的时候没有这个问题(不管了)。

<span>yum</span> <span>install</span> httpd-devel
登录后复制

虽然apxs2还是没有,但能找到apxs了:

<span>1</span> <span>find</span> / -<span>name apxs2
</span><span>2</span> <span>find</span> / -<span>name apxs
</span><span>3</span> /usr/bin/apxs
登录后复制

接下来几步一点点来,比较耗时:

<span>1</span> ./configure --with-apxs2=/usr/bin/apxs --with-<span>mysql
</span><span>2</span> <span>make</span>
<span>3</span> <span>make</span> <span>install<br /><br /><span>#之后发现单独编译pdo_mysql扩展有问题,换了这句重新编译</span><br /><span>#./configure --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-apxs2=/usr/bin/apxs</span><br /></span>
登录后复制

得到类似结果为安装成功:

Installing shared extensions:     /usr/local/lib/php/extensions/no-debug-non-zts-<span>20121212</span>/<span>
...
...
...
Wrote PEAR system config </span><span>file</span> at: /usr/local/etc/<span>pear.conf
You may want to add: </span>/usr/local/lib/<span>php to your php.ini include_path
</span>/usr/local/src/php-<span>5.5</span>.<span>33</span>/build/shtool <span>install</span> -c ext/phar/phar.phar /usr/local/<span>bin
</span><span>ln</span> -s -f phar.phar /usr/local/bin/<span>phar
Installing PDO headers:          </span>/usr/local/include/php/ext/pdo/
登录后复制

3.配置

复制php.ini

#这个位置一定不能错,编译.configure的时候我没有制定php.ini的位置,默认就是这里,
#如果跳过这一步,后面不会出问题,但是你将来该php.ini,比如安装扩展什么的,去修改/etc/php.ini(你原来的)的话都是无效的。
cp php.ini-development /usr/local/lib/php.ini
#这里我建议把原来的php.ini改掉,这样不会影响以后的find
#你的原来不一定是这里,建议find一下
mv /etc/php.ini /etc/php.ini.back

修改httpd.conf

<span>find</span> / -<span>name httpd.conf
</span><span>vi</span> /etc/httpd/conf/<span>httpd.conf
#加入这两句(310行左右)
AddType application</span>/x-httpd-<span>php .php .php3 .phtml .inc
AddType application</span>/x-httpd-php-<span>source .phps
#可能是升级的原因,这一句我本来就有,没有要加(50行左右)
LoadModule php5_module </span>/usr/lib64/httpd/modules/libphp5.so
登录后复制

重启apache:

service httpd restart
登录后复制

测试一下:

php -v
登录后复制

新建一个phpinfo.php访问一下:

<?<span>php
</span><span>echo</span> <span>phpinfo</span>();
登录后复制

结果完美:

 

可以需要安装一些依赖,如gd php-gd gd-devel php-xml php-common php-mbstring php-ldap php-pear php-xmlrpc php-imap,这些就交给yum吧。

 

dreamingodd原创文章,如转载请注明出处。

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

热门话题

Java教程
1664
14
CakePHP 教程
1423
52
Laravel 教程
1317
25
PHP教程
1268
29
C# 教程
1246
24
php5和php8有什么区别 php5和php8有什么区别 Sep 25, 2023 pm 01:34 PM

php5和php8的区别在性能、语言结构、类型系统、错误处理、异步编程、标准库函数和安全性等方面。详细介绍:1、性能提升,PHP8相对于PHP5来说在性能方面有了巨大的提升,PHP8引入了JIT编译器,可以对一些高频执行的代码进行编译和优化,从而提高运行速度;2、语言结构改进,PHP8引入了一些新的语言结构和功能,PHP8支持命名参数,允许开发者通过参数名而不是参数顺序等等。

php5如何改80端口 php5如何改80端口 Jul 24, 2023 pm 04:57 PM

php5改80端口的方法:1、编辑Apache服务器的配置文件中的端口号;2、辑PHP的配置文件以确保PHP在新端口上工作;3、重启Apache服务器,PHP应用程序将开始在新的端口上运行。

php5没有监听9000端口如何解决 php5没有监听9000端口如何解决 Jul 10, 2023 pm 04:01 PM

php5没有监听9000端口解决方法步骤:1、检查PHP-FPM配置文件;2、重启PHP-FPM服务;3、关闭防火墙或配置端口转发;4、检查其他进程是否占用9000端口。

php7和php5语法有什么区别 php7和php5语法有什么区别 Jul 10, 2023 pm 03:25 PM

php7和php5语法区别有:1、PHP7引入了严格的类型声明,而PHP5变量的类型是隐式的;2、PHP7引入了对标量类型声明的支持,而PHP5并没有;3、PHP7引入了NULL合并运算符,而PHP5检查一个变量是否存在并且不为null,需要使用条件语句;4、PHP7添加了新的比较运算符“”,而PHP5并没有;5、PHP7引入新特性匿名类,而PHP5并没有。

php5没有监听9000端口怎么解决 php5没有监听9000端口怎么解决 Mar 21, 2023 pm 04:32 PM

在使用PHP5时,有些用户可能会遇到无法监听端口9000的情况。这时,我们需要进行一些配置和排查工作来解决这一问题。

php5怎么改80端口 php5怎么改80端口 Mar 21, 2023 pm 04:32 PM

​如果你是一名网站管理员,你可能会碰到需要将 PHP5 的端口从默认的 80 端口进行修改的情况。这个过程可能会稍有进急,但是只要跟着以下步骤操作,一定会很容易地完成。

php7的版本和5有哪些不同 php7的版本和5有哪些不同 Sep 15, 2023 pm 04:11 PM

php7的版本和5的不同有性能提升、标量类型声明、返回值类型声明、异常处理改进、匿名类、语法改进、新的运算符、增强的错误处理和移除了一些旧特性等。详细介绍:1、性能提升,PHP7引入了全新的Zend引擎,名为Zend Engine 3.0,带来了显着的性能提升,PHP7的性能比PHP5提高了大约两倍,这主要是通过改进了内存管理、优化了函数调用和异常处理、增强了垃圾回收等等。

探讨PHP7和PHP5在语法上的不同之处 探讨PHP7和PHP5在语法上的不同之处 Mar 21, 2023 pm 07:10 PM

PHP是一种广泛使用的服务器端编程语言,被用于开发动态网站和应用程序。近些年,PHP7的发布引起了一些关注。PHP7比之前的版本(如PHP5)有很多改进和优化。在本文中,我们将探讨PHP7和PHP5在语法上的不同之处。

See all articles