linux 配置nginx+php-cgi

一.準備工做php

nginx源碼包: http://www.nginx.org/download/nginx-0.7.65.tar.gzhtml

php源碼包:http://ah.down.chinaz.com/201302/php-5.3.22.tar.gzmysql

安裝一些必要的系統軟件包linux

yum install pcre-devel.i386
yum install openssl-devel.i386
yum install libxml2-devel.i386nginx

要區分64位機跟32位機,web

個人linux 內核是:2.6.32-279.el6.x86_64sql

二.安裝nginx
解壓nginx
tar zxvf nginx-0.7.65.tar.gz瀏覽器

進入nginx源碼目錄
cd nginx-0.7.65 curl

配置nginx編譯文件
./configure --prefix=/usr/local/nginx php-fpm

編譯並安裝nginx
make && make install
nginx的安裝目錄被設置在 =/usr/local/nginx

運行nginx
/usr/local/nginx/sbin/nginx
nginx 安裝初步完成,此時能夠用 ip 訪問到歡迎界面。(http://IP(linux)).

安裝過程遇到的問題:

1.pcre包沒有安裝 執行:yum install pcre-devel.x86_64

2../configure: error: the HTTP cache module requires md5 functions

緣由是須要OpenSSL library
解決辦法:yum -y install openssl openssl-devel

三.安裝php

在開始編譯前,安裝一些php基本的軟件包,直接yum安裝。
yum -y install gd curl curl-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel  libxml2 libxml2-devel mysql mysql-devel
準備好後,進行php目錄進行編譯

1.解壓php軟件包

2. ./configure --prefix=/usr/local/php --enable-fastcgi --enable-fpm --enable-debug --with-gd --with-jpeg-dir --with-png-dir --with-freetype-dir --enable-mbstring --with-curl --with-mysql=/usr/bin/mysql --with-mysqli=/usr/bin/mysql_config

若是沒有mysql,能夠去掉最後兩個選項

3.make && make install

cp php.ini-development /usr/local/php/lib/php.ini
cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
安裝完成後便可啓動php了
/usr/local/php/sbin/php-fpm
運行後,未提示錯誤,啓動成功。
 

安裝過程當中遇到的問題:

1.configure: error: xml2-config not found. Please check your libxml2 installation.

解決辦法:

1.yum install libxml2

2.yum install libxml2-devel -y

php安裝成功

三.修改配置

編輯 /usr/local/nginx/conf/nginx.conf
1.找到 server 片斷
server {
......
}

2.server_name 的參數修改爲本身的域名
server_name  www.elepin.com;  

3.root 改爲本身要綁定的目錄,index指明哪些文件做爲首頁
location / {
root /usr/www;
index index.html index.htm index.php;
}

下面是php-cgi的鏈接配置,root跟上面的同樣, fastcgi_pass,fastcgi_index,include 都默

認,要改的是 fastcgi_param,參照下面
location ~ \.php$ {
root /usr/www;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root/$fastcgi_script_name;
include fastcgi_params;
}

打開nginx配置文件找到下面這段配置
vi /usr/local/nginx/conf/nginx.conf
            # location ~ \.php$ {
            #     root                html;
            #     fastcgi_pass    127.0.0.1:9000;
            #     fastcgi_index  index.php;
            #     fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
            #     include           fastcgi_param;
            # }
將這段配置的註釋去掉,並將include fastcgi_param改成include fastcgi.conf
保存重啓nginx
/usr/local/nginx/sbin/nginx -s reload
默認web目錄是html文件夾,在下面新建一個測試文件
touch /usr/local/nginx/html/test.php
vi /usr/local/nginx/html/test.php
寫入<?php phpinfo();?>
保存後,在瀏覽器中訪問該頁,如顯示php配置信息,則大功告成。

重啓nginxkillall nginx/usr/local/nginx/sbin/nginx

相關文章
相關標籤/搜索