【CNMP系列】CentOS7.0下安裝PHP5.6.30服務

上一節咱們講過了如何在CentOS7.0下安裝MySql服務,若是沒有看到歡迎頁面的朋友,能夠加個人我的微信詳聊:litao514148204php

附上一節地址:http://www.cnblogs.com/riverdubu/p/6426852.htmlhtml

關於php-fpm

nginx自己不能處理PHP,它只是個web服務器,當接收到請求後,若是是php請求,則發給php解釋器處理,並把結果返回給客戶端。mysql

nginx通常是把請求發fastcgi管理進程處理,fascgi管理進程選擇cgi子進程處理結果並返回被nginx。nginx

PHP-FPM是一個PHP FastCGI管理器,是隻用於PHP的。web

PHP在 5.3.3 以後已經講php-fpm寫入php源碼核心了。因此已經不須要另外下載了。sql

獲取PHP下載地址

爲何選擇5.6.30這個版本,由於學習,不是研究。誠然,7.0新增了不少PHP的新特性,性能上面也有些提高,若是是研究,卻是能夠折騰一番,後面得空再講7.0的版本以及如何在各個PHP版本之間切換。vim

打開php的官網:http://php.net/,查看php的版本列表api

右擊,複製連接地址,在遠程主機登陸,下載該軟件(我選的是Australia的主機mirror下載的)瀏覽器

# wget  http://au1.php.net/get/php-5.6.30.tar.gz/from/this/mirror

下載下來的是一個mirror文件,改爲咱們須要的文件名服務器

#mv mirror php-5.6.30.tar.gz
#tar zxvf php-5.6.30.tar.gz
#cd php-5.6.30

配置安裝

進入到目錄,咱們須要在安裝的時候將安裝目錄配置到/usr/local/php/裏

#./configure --prefix=/usr/local/php --with-curl --with-freetype-dir --with-gd --with-gettext --with-iconv-dir --with-kerberos --with-libdir=lib64 --with-libxml-dir --with-MySQL --with-mysqli --with-openssl --with-pcre-regex --with-pdo-mysql --with-pdo-sqlite --with-pear --with-png-dir --with-xmlrpc --with-xsl --with-zlib --enable-fpm --enable-bcmath --enable-libxml --enable-inline-optimization --enable-gd-native-ttf --enable-mbregex --enable-mbstring --enable-opcache --enable-pcntl --enable-shmop --enable-soap --enable-sockets --enable-sysvsem --enable-xml --enable-zip

配置的過程當中可能會報以下錯誤

錯誤1:

xml2-config not found. Please check your libxml2 installation.

解決辦法

安裝libxml2相關組件

#yum install libxml2
#yum install libxml2-devel -y

錯誤2:

Please reinstall the libcurl distribution -
    easy.h should be in <curl-dir>/include/curl/

安裝curl相關組件

#yum install curl curl-devel

錯誤3:

configure: error: png.h not found.

安裝libpng相關組件

#yum install libpng
#yum install libpng-devel

錯誤4:

freetype-config not found.

安裝freetype相關組件

#yum install freetype-devel

錯誤5:

xslt-config not found. Please reinstall the libxslt >= 1.1.0 distribution

安裝libxslt相關組件

#yum install libxslt-devel

好的,當咱們看到下面這句話的時候,說明你的php已經配置完成啦!

接下來咱們只須要編譯安裝便可完成php的安裝

#make && make install

看到這句話,代表安裝完成!

爲了保險起見,咱們make test一把,看看是否真的成功了。

配置相關

php.ini配置

首先咱們須要配置的是php.ini這個文件

安裝目錄有2個文件:php.ini-development和php.ini-production

php.ini-production 線上版本使用

php.ini-development 開發版本使用

咱們選擇development進行配置

# cp php.ini-development /usr/local/php/lib/php.ini

php-fpm配置

拷貝php-fpm配置文件

#cp -R ./sapi/fpm/php-fpm.conf /usr/local/php/etc/php-fpm.conf

拷貝啓用文件

#cp -R ./sapi/fpm/php-fpm /etc/init.d/php-fpm(已棄用,詳細的見注1)

啓動

#/etc/init.d/php-fpm

查看php是否啓動成功

#ps aux | grep php

看到這些,代表你的php已經啓動成功啦!

重啓及關閉

#kill -9 進程號
#/etc/init.d/php-fpm

配置Nginx支持PHP

進入nginx主目錄,/usr/local/nginx;

#cd /usr/local/nginx

進入配置目錄

#cd conf

Nginx支持PHP須要修改nginx.conf

#vim nginx.conf

代開下面代碼,讓Nginx支持PHP,在server代碼段裏。

修改完,這段代碼變爲,紅色部分爲咱們主機目錄爲/usr/www,須要修改fastcgi_param SCRIPT_FILENAME指向對應目錄便可:

 

設置主目錄設置爲/usr/www。

註釋掉root那行,新增一行:root /usr/www;

保存退出。

根據Nginx章的解釋,咱們重啓Nginx服務。

#/etc/init.d/nginx restart

若是你沒有按照咱們在Nginx的方法配置,能夠按照如下的方式重啓Nginx服務

# /usr/local/nginx/sbin/nginx -s reload

 重啓成功!下面咱們在/usr/www目錄下添加一個新文件。

#vim /usr/www/phpinfo.php

插入如下內容

<?php  
phpinfo();  
?>  

在瀏覽器中打開http://遠程ip/phpinfo.php

看到這個頁面,恭喜你,你的PHP已經安裝配置完成。你能夠在這個頁面看到全部php依賴的組件,下一節我將和你們詳細講解一下這個頁面,若是對本節有什麼疑問的,歡迎在評論區和我交流討論,有留言必回。^_^ 

設置php開機自啓動與開啓php服務便捷方式

上面的方法中,我在拷貝php-fpm的服務時出了問題,不該該直接將php-fpm的可執行文件拷貝到/etc/init.d/目錄下去,應該將php給咱們準備好的init.d.php-fpm。

#cp ./sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm

將php-fpm服務添加到chkconfig列表

#chkconfig --add php-fpm

設置開機自啓動

#chkconfig php-fpm on

之後重啓和中止php的方式爲

#service php-fpm start
#service php-fpm stop
#service php-fpm restart
#service php-fpm reload

上面是個人問題,請你們及時更正。

相關文章
相關標籤/搜索