Linux PHP5.3升级PHP5.5.33,php5.3php5.5.33
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原创文章,如转载请注明出处。

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

php5和php8的差異在效能、語言結構、型別系統、錯誤處理、非同步程式設計、標準函式庫函數和安全性等方面。詳細介紹:1、效能提升,PHP8相對於PHP5來說在效能方面有了巨大的提升,PHP8引入了JIT編譯器,可以對一些高頻執行的程式碼進行編譯和最佳化,從而提高運行速度;2、語言結構改進,PHP8引入了一些新的語言結構和功能,PHP8支援命名參數,允許開發者透過參數名稱而不是參數順序等等。

php5改80埠的方法:1.編輯Apache伺服器的設定檔中的連接埠號碼;2、輯PHP的設定檔以確保PHP在新連接埠上運作;3、重新啟動Apache伺服器,PHP應用程式將開始在新的連接埠上運行。

php7和php5語法區別有:1、PHP7引入了嚴格的類型聲明,而PHP5變量的類型是隱式的;2、PHP7引入了對標量類型聲明的支持,而PHP5並沒有;3、PHP7引入了NULL合併運算符,而PHP5檢查一個變數是否存在且不為null,需要使用條件語句;4、PHP7加入了新的比較運算子“<=>”,而PHP5並沒有;5、PHP7引入新特性匿名類,而PHP5並沒有。

php5沒有監聽9000埠解決方法步驟:1、檢查PHP-FPM設定檔;2、重啟PHP-FPM服務;3、關閉防火牆或設定埠轉送;4、檢查其他程序是否佔用9000埠。

如果你是網站管理員,你可能會碰到需要將 PHP5 的連接埠從預設的 80 連接埠進行修改的情況。這個過程可能會稍有進急,但是只要跟著以下步驟操作,一定會很容易地完成。

在使用PHP5時,有些使用者可能會遇到無法監聽連接埠9000的情況。這時,我們需要進行一些配置和排查工作來解決這個問題。

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

PHP是一種廣泛使用的伺服器端程式語言,被用於開發動態網站和應用程式。近些年,PHP7的發布引起了一些關注。 PHP7比之前的版本(如PHP5)有許多改進和最佳化。在本文中,我們將探討PHP7和PHP5在語法上的差異。
