Linux安裝PHP


下載PHP:

官網地址:http://cn2.php.net/

下載頁面:http://cn2.php.net/get/php-7.1.6.tar.gz/from/a/mirror

點擊下載

tar -zxf 解壓

可以通過 ./configure  --help 查看幫助。

配置:注意with-apxs2 httpd路徑和 with-pdo-mysql 路徑。

./configure --prefix=/usr/local/php --with-apxs2=/usr/local/httpd/bin/apxs --with-config-file-path=/usr/local/lib --with-pdo-mysql=/usr/local/mysql --with-zlib-dir=/usr/lib

可能會遇到錯誤:configure error xml2-config not found. please check your libxml2 installation

解決辦法:

檢查是否安裝了libxm包
[root@localhost software]# rpm -qa |grep  libxml2
libxml2-2.6.26-2.1.12
libxml2-python-2.6.26-2.1.12
重新安裝libxml2和libxml2-devel包, yum安裝的時候發現新版本會提示更新,需要更新的可以更新,不要跳過就行了。
[root@localhost  /]# yum install libxml2
[root@localhost  /]# yum install libxml2-devel -y
安裝完之后查找xml2-config文件是否存在
[root@localhost  /] # find / -name "xml2-config"
/usr/bin/xml2-config
 
然后重新執行./configure --prefix=/usr/local/php --with-apxs2=/usr/local/httpd/bin/apxs --with-config-file-path=/usr/local/lib --with-pdo-mysql=/usr/local/mysql --with-zlib-dir=/usr/lib

配置成功:

在make之前還要做一個mysql的header文件的軟連接。因為mysql安裝的時候指定了目錄,不做軟連接的話,還是找不到header文件。

   ln -s /usr/local/mysql/include/* /usr/local/include/

執行make 編譯

執行 make install 安裝 

 安裝包中的php.ini-production拷貝到/usr/local/php/lib/下即可

cp php.ini-production /usr/local/lib/php.ini

在httpd.conf配置文件中查找 LoadModule php7_module modules/libphp7.so

如果沒有搜索到(一般都是可以搜索到的),就將這段指令添加到httpd.conf配置文件中,使apache可以加載libphp7.so模塊,並進行php文件的解析。

 

在httpd.conf配置文件中再添加一段指令:<FilesMatch "\.ph(p[2-6]?|tml)$"> SetHandler application/x-httpd-php</FilesMatch>

這段指令告訴apache,碰到文件名以.php, .php2, .php3, .php4, .php5, .php6或phtml結尾的文件使用libphp7.so模塊進行解析。其中"\.ph(p[2-6]?|tml)$"為正則表達式,你可以隨意更改,只要符合PCRE正則表達式語法,都可以。

 

接下來,在Vim中搜索”DirectoryIndex“字符串,大家可以看到已經有index.html了,在index.html后面添加 index.php index.phtml

 

進入/usr/local/apache2/htdocs目錄:cd /usr/local/apache2/htdocs創建一個測試文件:touch t.php用Vim打開它添加:<?php phpinfo();?>然后就可以通過瀏覽器訪問了:



如果php的頁面不能夠解析,需要重啟httpd服務,最好是殺死每個進程,然后再重啟。
如果遇到這樣的錯誤:
錯誤 324 (net::ERR_EMPTY_RESPONSE):服務器已斷開連接,且未發送任何數據。
找到php.ini,加上配置 
error_reporting  =  E_ALL & ~E_NOTICE
,忽略E_NOTICE報錯,重啟apache 解決問題。

如果瀏覽器還是打不開,需要關閉防火牆。

   /etc/init.d/iptables stop

執行命令php 提示 command not found 解決方案
yum install php-devel




免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM