Linux安裝PHP

來源:互聯網
上載者:User

標籤:com   inux   打不開   報錯   rod   ror   ini   設定檔   blank   

下載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包[[email protected] software]# rpm -qa |grep  libxml2libxml2-2.6.26-2.1.12libxml2-python-2.6.26-2.1.12重新安裝libxml2和libxml2-devel包, yum安裝的時候發現新版本會提示更新,需要更新的可以更新,不要跳過就行了。[[email protected]  /]# yum install libxml2[[email protected]  /]# yum install libxml2-devel -y安裝完之後尋找xml2-config檔案是否存在[[email protected]  /] # 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)$"為Regex,你可以隨意更改,只要符合PCRERegex文法,都可以。

 

接下來,在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



Linux安裝PHP

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.