linux下nginx整合php


在nginx中葯使用php可不像apache那樣,因為apache是把php當做自己的一個模塊來啟動的,

而我們的nginx是把http請求轉發給php程序,也就是說,php和nginx是相互獨立的的進程

php於nginx的通訊,我們稱為fastcgi運行方式。

下面我們來說說nginx怎樣整合php(nginx的安裝可以看看我的文章“linux下編譯安裝nginx”)。

1、首先,我們應該要獲取php的安裝包。

去php官網下載:http://www.php.net/downloads.php

這里我選的是php5.6

將下載好的安裝包放在linux目錄下(我是放在/root目錄下,大家可以隨意放置,可以創建一個專門放置安裝包的目錄。)

2、解壓安裝包:tar zxvf php-5.6.39.tar.gz 

      進入到解壓后的目錄:cd php-5.6.39/

      ./configure配置: ./configure --prefix=/usr/local/fastphp --with-mysql=mysqlnd --enable-mysqlnd --with-gd --enable-gd-native-ttf --enable-gd-jis-conv --enable-fpm

  (如果在configure的過程中出現了報錯,按照錯誤提示進行操作,一般是一些依賴軟件沒有安裝,使用yum進行安裝

  make

  make install

3、配置一些配置文件。

     進入php安裝目錄:cd /usr/local/fastphp/

  將php配置文件拷貝到 php安裝目錄中的lib目錄下:cp /root/php-5.6.39/php.ini-development ./lib/php.ini

  cp ./etc/php-fpm.conf.default ./etc/php-fpm.conf

    啟動php:[root@VM_16_2_centos sbin]# ./php-fpm    //其中php-fpm在php安裝目錄的sbin目錄下,直接執行就行了

4、配置nginx.conf文件。

  vi /usr/local/nginx/conf/nginx.conf

    在nginx.conf文件中加入紅色部分。

server {
listen 80;
server_name localhost;

#charset koi8-r;

#access_log logs/host.access.log main;

location / {
root html;
index index.html index.htm;
}

location ~ \.php$ {
  root html;
  fastcgi_pass 127.0.0.1:9000;
  fastcgi_index index.php;
  fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
  include fastcgi_params;
}

#error_page 404 /404.html;

5、重啟nginx。

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

6、在nginx的安裝目錄下的html目錄中寫一個test.php程序文件。

  <?php

    phpinfo();

  ?>

7、訪問。http://www.panchao.com/test.php(我用的是雲服務器,有外網ip,在本地電腦配了hosts:111.231.226.228   www.panchao.com 所以能用www.panchao.com 這個域名來訪問,如果大家是本地虛擬機的話可以用127.0.0.1/test.php來訪問。)我們如果得到這樣的結果,則表示我們nginx和php的整合成功了。

  

 

  

 


免責聲明!

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



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