nginx解析php頁面

nintyuui發表於2021-09-09

nginx本身不能處理PHP,它只是個web伺服器,當接收到請求後,如果是php請求,則發給php直譯器處理,並把結果返回給客戶端。

nginx一般是把請求發fastcgi管理程式處理,fascgi管理程式選擇cgi子程式處理結果並返回被nginx

本文以php-fpm為例介紹如何使nginx支援PHP

一、編譯安裝php-fpm

什麼是PHP-FPM

PHP-FPM是一個PHP FastCGI管理器,是隻用於PHP的,可以在 下載得到.

PHP-FPM其實是PHP原始碼的一個補丁,旨在將FastCGI程式管理整合進PHP包中。必須將它patch到你的PHP原始碼中,在編譯安裝PHP後才可以使用。


系統版本:centos7.0 x86_64

軟體環境:已安裝nginx


安裝php-fpm依賴環境

yum -y install gcc gcc-c++ automake autoconf libtool make libmcrypt-devel mhash-devel mcrypt-devel libxslt-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5-devel libidn libidn-devel openssl openssl-devel

!!!Yum可能無法安裝libmcrypt-devel mhash-devel mcrypt-devel可以使用原始碼方式安裝

編譯安裝php

1

2

3

tar zvxf php-5.4.7.tar.gz

cd php-5.4.7

./configure --prefix=/usr/local/php  --enable-fpm


在nginx主配置檔案中的http模組中插入下列內容

location ~ .php$ {

            root /var/www/html;

            fastcgi_pass 127.0.0.1:9000;

            fastcgi_index index.php;

            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

            include fastcgi_params;

                }

 圖片描述

vim /var/www/html/index.php

1

2

3

echo phpinfo();

?>


依次開啟php-fpm模組和nginxd服務

開啟命令:

/usr/local/php/sbin/php-fpm

關閉命令:

killall -9 php-fpm

 

客戶端訪問php頁面

 

 

 


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/3209/viewspace-2801498/,如需轉載,請註明出處,否則將追究法律責任。

相關文章