Rumah >php教程 >php手册 >Linux下 nginx+php环境搭建

Linux下 nginx+php环境搭建

WBOY
WBOYasal
2016-06-06 19:53:42934semak imbas

一、 安装nginx 1. 在/etc/yum.repos.d/ 目录下创建以文件nginx.repo vi /etc/yum.repos.d/nginx.repo 内容如下: [nginx]name=nginx repobaseurl=http://nginx.org/packages/rhel/6/$basearch/gpgcheck=0enabled=1 2. 安装nginx # yum install nginx 二、安

一、 安装nginx

1. 在/etc/yum.repos.d/ 目录下创建以文件nginx.repo

vi /etc/yum.repos.d/nginx.repo

内容如下:

[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/rhel/6/$basearch/
gpgcheck=0
enabled=1

2. 安装nginx

# yum install nginx

二、安装MySQL

   见 http://blog.sina.com.cn/s/blog_505bf9af01012kkh.html

三、安装php5.2.13和php-5.2.13-fpm-0.5.13

安装php需要安装其他依赖:libxml2和libxml2-devel包

yum installlibxml2

yum install libxml2-devel-y

1. 下载 php-5.2.13.tar.gz 和php-5.2.13-fpm-0.5.13.diff.gz

2. 安装

 # tar zxvfphp-5.2.13.tar.gz 

 gzip -cdphp-5.2.13-fpm-0.5.13.diff.gz | patch -d php-5.2.13 -p1

 # cd php-5.2.13

 # ./configure --prefix=/usr/local/php --enable-fastcgi --enable-fpm --with-mysql=/usr/local/mysql

 # make

 # make install

3. 配置php

cp php.ini-dist /usr/local/lib/php.ini 

4. 管理FastCGI进程

 /usr/local/php/bin/php-cgi--fpm   或者 /usr/local/php/sbin/php-fpm start

建议采用第二种方式启动FastCGI进程。

如果执行 /usr/local/php/sbin/php-fpm start 报错,一般是linux权限问题,请给/usr/local/php目录读写权限。

/usr/local/php/sbin/php-fpm还有其他参数,具体为start|stop|quit|restart|reload|logrotate。
每个启动参数的含义如下 start,启动PHP的FastCGI进程。 

  1. stop,强制终止PHP的FastCGI进程。
  2. quit,平滑终止PHP的FastCGI进程。
  3. restart,重启PHP的FastCGI进程。
  4. reload,重新加载PHP的php.ini。
  5. logrotate,重新启用log文件。

reload是个很重要的参数,它可以在PHP的FastCGI进程不中断的情况下重新加载改动过的php.ini,因此通过php-fpm可以平滑变更FastCGI模式下的PHP设置。

在FastCGI进程启动后,其监听的IP地址和端口也随即启动,可以通过ps和netstat查看相关信息。

 # netstat -antl|grep 9000

 # ps -ef|grep php-cgi 

四、配置Nginx来支持PHP

1.配置/etc/nginx/conf.d/default.conf

 server {
   listen      80;
   server_name  localhost;

    #charsetkoi8-r;
   #access_log /var/log/nginx/log/host.access.log  main;

    location/ {
       root   /etc/nginx/html;
       index  index.html index.htm index.php;
    }

   #error_page 404             /404.html;

    #redirect server error pages to the static page /50x.html
    #
   error_page   500 502 503504  /50x.html;
    location =/50x.html {
       root   /etc/nginx/html;
    }

    # passthe PHP scripts to FastCGI server listening on 127.0.0.1:9000

    location~ \.php$ {
       root          html;
       fastcgi_pass  127.0.0.1:9000;
       fastcgi_index  index.php;
       #fastcgi_param  SCRIPT_FILENAME /scripts$fastcgi_script_name;
       fastcgi_param  SCRIPT_FILENAME /etc/nginx/html$fastcgi_script_name;
       include       fastcgi_params;
    }
}

或者 在/etc/nginx/conf.d 创建一个配置文件testlink.conf,内容为:

server{
    listen 80;
    server_nametestlink.conversant.com.cn;

   location / {

       root  /opt/app/testlink;

       index index.php index.html index.htm;
    }
  # pass the PHP scripts to FastCGI serverlistening on 127.0.0.1:9000

   location ~ \.php$ {

       root         html;

      fastcgi_pass   127.0.0.1:9000;

      fastcgi_index  index.php;

      #fastcgi_param  SCRIPT_FILENAME /scripts$fastcgi_script_name;

      fastcgi_param  SCRIPT_FILENAME /opt/app/testlink$fastcgi_script_name;

       include      fastcgi_params;
    }
}

2. 启动nginx

# nginx

3. 重新启动 php-fpm

 /usr/local/php/sbin/php-fpmrestart

五、测试Nginx对PHP的解析功能

这里在/etc/nginx/html目录下创建一个phpinfo.php文件,内容如下:

重新启动 php-fpm

/usr/local/php/sbin/php-fpmrestart
重启 nginx

# nginx -s reload

然后通过浏览器访问http://192.168.1.32/,默认会在浏览器显示“Welcometo Nginx!”表示Nginx正常运行。
接着在浏览器中访问http://192.168.1.32/phpinfo.php,如果PHP能够正常解析,会出现PHP安装配置以及功能列表统计信息。

 

至此安装配置nginxphp完成。

 

参考文章: http://ixdba.blog.51cto.com/2895551/806622

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn