Linux PHP5.3升級PHP5.5.33,php5.3php5.5.33_PHP教程
Jul 12, 2016 am 08:55 AMLinux PHP5.3升級PHP5.5.33,php5.3php5.5.33
由于要使用了laravel5.1,php要升級到5.5以上。具體環(huán)境是Aliyun Cent OS 7.0。由于阿里的yum源lastest只有5.4,laravel5.1必須php5.5,加了幾個網(wǎng)上的yum源,各種各樣的問題,所以只能麻煩的編譯安裝了。
首先網(wǎng)上這類的文章非常多,每個人的升級目的,要升級的組件都不完全一樣。最好的說明文檔還是官方安裝文檔,如果php官網(wǎng)的安裝失敗,再去搜索相關(guān)問題。我最終靠的是官網(wǎng)上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這一步出了問題,去掉這個參數(shù)即使安裝也是不行,這個參數(shù)編譯出libphp5.so并用在httpd.conf中,find / -name apxs2搜不到結(jié)果。我找了很久,發(fā)現(xiàn)是我的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>#之后發(fā)現(xiàn)單獨編譯pdo_mysql擴展有問題,換了這句重新編譯</span><br /><span>#./configure --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-apxs2=/usr/bin/apxs</span><br /></span>
得到類似結(jié)果為安裝成功:
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.配置
復(fù)制php.ini
#這個位置一定不能錯,編譯.configure的時候我沒有制定php.ini的位置,默認(rèn)就是這里,
#如果跳過這一步,后面不會出問題,但是你將來該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>();
結(jié)果完美:
?
可以需要安裝一些依賴,如gd php-gd gd-devel php-xml php-common php-mbstring php-ldap php-pear php-xmlrpc php-imap,這些就交給yum吧。
?
dreamingodd原創(chuàng)文章,如轉(zhuǎn)載請注明出處。

熱AI工具

Undress AI Tool
免費脫衣服圖片

Undresser.AI Undress
人工智能驅(qū)動的應(yīng)用程序,用于創(chuàng)建逼真的裸體照片

AI Clothes Remover
用于從照片中去除衣服的在線人工智能工具。

Clothoff.io
AI脫衣機

Video Face Swap
使用我們完全免費的人工智能換臉工具輕松在任何視頻中換臉!

熱門文章

熱工具

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

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

禪工作室 13.0.1
功能強大的PHP集成開發(fā)環(huán)境

Dreamweaver CS6
視覺化網(wǎng)頁開發(fā)工具

SublimeText3 Mac版
神級代碼編輯軟件(SublimeText3)

php5和php8的區(qū)別在性能、語言結(jié)構(gòu)、類型系統(tǒng)、錯誤處理、異步編程、標(biāo)準(zhǔn)庫函數(shù)和安全性等方面。詳細(xì)介紹:1、性能提升,PHP8相對于PHP5來說在性能方面有了巨大的提升,PHP8引入了JIT編譯器,可以對一些高頻執(zhí)行的代碼進(jìn)行編譯和優(yōu)化,從而提高運行速度;2、語言結(jié)構(gòu)改進(jìn),PHP8引入了一些新的語言結(jié)構(gòu)和功能,PHP8支持命名參數(shù),允許開發(fā)者通過參數(shù)名而不是參數(shù)順序等等。

php5改80端口的方法:1、編輯Apache服務(wù)器的配置文件中的端口號;2、輯PHP的配置文件以確保PHP在新端口上工作;3、重啟Apache服務(wù)器,PHP應(yīng)用程序?qū)㈤_始在新的端口上運行。

php5沒有監(jiān)聽9000端口解決方法步驟:1、檢查PHP-FPM配置文件;2、重啟PHP-FPM服務(wù);3、關(guān)閉防火墻或配置端口轉(zhuǎn)發(fā);4、檢查其他進(jìn)程是否占用9000端口。

在使用PHP5時,有些用戶可能會遇到無法監(jiān)聽端口9000的情況。這時,我們需要進(jìn)行一些配置和排查工作來解決這一問題。

php7和php5語法區(qū)別有:1、PHP7引入了嚴(yán)格的類型聲明,而PHP5變量的類型是隱式的;2、PHP7引入了對標(biāo)量類型聲明的支持,而PHP5并沒有;3、PHP7引入了NULL合并運算符,而PHP5檢查一個變量是否存在并且不為null,需要使用條件語句;4、PHP7添加了新的比較運算符“”,而PHP5并沒有;5、PHP7引入新特性匿名類,而PHP5并沒有。

?如果你是一名網(wǎng)站管理員,你可能會碰到需要將 PHP5 的端口從默認(rèn)的 80 端口進(jìn)行修改的情況。這個過程可能會稍有進(jìn)急,但是只要跟著以下步驟操作,一定會很容易地完成。

php7的版本和5的不同有性能提升、標(biāo)量類型聲明、返回值類型聲明、異常處理改進(jìn)、匿名類、語法改進(jìn)、新的運算符、增強的錯誤處理和移除了一些舊特性等。詳細(xì)介紹:1、性能提升,PHP7引入了全新的Zend引擎,名為Zend Engine 3.0,帶來了顯著的性能提升,PHP7的性能比PHP5提高了大約兩倍,這主要是通過改進(jìn)了內(nèi)存管理、優(yōu)化了函數(shù)調(diào)用和異常處理、增強了垃圾回收等等。

PHP是一種廣泛使用的服務(wù)器端編程語言,被用于開發(fā)動態(tài)網(wǎng)站和應(yīng)用程序。近些年,PHP7的發(fā)布引起了一些關(guān)注。PHP7比之前的版本(如PHP5)有很多改進(jìn)和優(yōu)化。在本文中,我們將探討PHP7和PHP5在語法上的不同之處。
