溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Centos手動(dòng)安裝PHP

發(fā)布時(shí)間:2020-06-29 20:52:12 來(lái)源:網(wǎng)絡(luò) 閱讀:275 作者:myboor 欄目:系統(tǒng)運(yùn)維

下載PHP的源碼,我下的是7.2版本,看了一下安裝的參數(shù)太多了,也沒(méi)有時(shí)間依次了解每個(gè)參數(shù)的意思,直接從網(wǎng)上復(fù)制了一個(gè),先嘗試安裝起來(lái)。并記錄一下步驟,基本的步驟就是解壓、配置、編譯、運(yùn)行。
1.下載PHP源碼,將其放到某個(gè)目錄下,比如~/temp
2.接下來(lái)準(zhǔn)備運(yùn)行configure,嘗試了無(wú)數(shù)次,基本快崩潰,因?yàn)槊看慰偸翘崾救鄙倌硞€(gè)支持庫(kù)。總結(jié)下來(lái)有以下一些,
curl,freetype,glib,libcurl,libjpeg,libmcrypt,libpng,libxml2,libXpm,libxslt,openssl,postgresql,bzip2,先把這些庫(kù)安裝完畢,接下來(lái)進(jìn)入正文。
3.在源碼目錄下運(yùn)行這個(gè)很長(zhǎng)的配置命令
'./configure' '--prefix=/usr/local/php' '--with-pdo-pgsql' '--with-zlib-dir' '--with-freetype-dir' '--enable-mbstring' '--with-libxml-dir=/usr' '--enable-soap' '--enable-calendar' '--with-curl' '--with-mcrypt' '--with-gd' '--with-pgsql' '--disable-rpath' '--enable-inline-optimization' '--with-bz2' '--with-zlib' '--enable-sockets' '--enable-sysvsem' '--enable-sysvshm' '--enable-pcntl' '--enable-mbregex' '--enable-exif' '--enable-bcmath' '--with-mhash' '--enable-zip' '--with-pcre-regex' '--with-pdo-mysql' '--with-mysqli' '--with-jpeg-dir=/usr' '--with-png-dir=/usr' '--enable-gd-native-ttf' '--with-openssl' '--with-fpm-user=www-data' '--with-fpm-group=www-data' '--with-libdir=/lib/x86_64-linux-gnu/' '--enable-ftp' '--with-gettext' '--with-xmlrpc' '--with-xsl' '--enable-opcache' '--enable-fpm' '--with-iconv' '--with-xpm-dir=/usr'

崩潰不,都不知道這么多參數(shù)干嘛用的,但無(wú)論如何,運(yùn)行成功了,沒(méi)有提示錯(cuò)誤。

4.在PHP解壓目錄下運(yùn)行make && make install, 又提示libtool: link: `ext/opcache/ZendAccelerator.lo' is not a valid libtool object錯(cuò)誤,Ok, 查找網(wǎng)上資料,運(yùn)行make distclean。然后重新make,提示找不到make file。查不到資料了,幸好咱有虛擬機(jī)快照,恢復(fù)快照,重新安裝所需的庫(kù)文件,重新configure,總算成功。

5.make成功后,到安裝路徑下運(yùn)行php -version,正常顯示版本號(hào)。將此路徑加入到系統(tǒng)路徑變量中,
vi /etc/profile
在最后加入PHP路徑,
PATH=$PATH:/usr/local/php/bin
export PATH
保存后,在任意地方嘗試運(yùn)行php -version成功。

6.接下來(lái),將PHP加入到apache中,
vim /etc/httpd/conf/httpd.conf
//在LoadModule后面添加:LoadModule php7_module modules/libphp7.so //不添加則訪問(wèn).php文件將會(huì)變成下載,正常這個(gè)應(yīng)該是自動(dòng)添加才對(duì)
//在DirectoryIndex后面添加:index.php
//在AddType application/x-gzip .gz .tgz后面添加:AddType application/x-httpd-php .php //.php前面有一個(gè)空格
重啟Apache服務(wù),提示失敗,找不到libphp7.so,再查資料吧,先刪除LoadModule行??纯磻?yīng)該是在編譯php時(shí)要加入apxs路徑參數(shù),才能促成生成libphp7.so,而apxs需要安裝依賴包httpd-devel。安裝httpd-devel,需要httpd和httpd-tools,全部下載安裝完畢。
重新編譯php,./configure --with-apxs2=/usr/bin/apxs,成功后,再次make && make install
好事,沒(méi)發(fā)現(xiàn)任何錯(cuò)誤,到httpd.conf中查看,發(fā)現(xiàn)LoadModule 這句話已經(jīng)自動(dòng)加上了。停止并重啟apache服務(wù),測(cè)試PHP網(wǎng)頁(yè),一切正常。
7.復(fù)制php.ini-development或者php.ini-production到php的安裝目錄下的lib文件夾中 /usr/local/php/lib 并重命名為php.ini

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI