> 백엔드 개발 > PHP 튜토리얼 > nginx+php装配

nginx+php装配

WBOY
풀어 주다: 2016-06-13 12:19:57
원래의
1078명이 탐색했습니다.

nginx+php安装

一、.安装nginx请参考:?http://qingwei201314.iteye.com/blog/1729174

二、安装php:

  1. 获取并解压 PHP 源代码:

    tar zxf php-x.x.x
    로그인 후 복사
  2. 配置并构建 PHP。在此步骤您可以使用很多选项自定义 PHP,例如启用某些扩展等。 运行 ./configure --help 命令来获得完整的可用选项清单。 在本示例中,我们仅进行包含 PHP-FPM 和 MySQL 支持的简单配置。

    cd ../php-x.x.x./configure --enable-fpm --with-mysqlmakesudo make install
    로그인 후 복사
  3. 创建配置文件,并将其复制到正确的位置。

    cp php.ini-development /usr/local/php/php.inicp /usr/local/etc/php-fpm.conf.default /usr/local/etc/php-fpm.confcp sapi/fpm/php-fpm /usr/local/bin
    로그인 후 복사
  4. 需要着重提醒的是,如果文件不存在,则阻止 Nginx 将请求发送到后端的 PHP-FPM 模块, 以避免遭受恶意脚本注入的攻击。

    将 php.ini 文件中的配置项?cgi.fix_pathinfo?设置为?0?。

    打开 php.ini:

    vim /usr/local/php/php.ini
    로그인 후 복사

    定位到?cgi.fix_pathinfo=?并将其修改为如下所示:

    cgi.fix_pathinfo=0
    로그인 후 복사
  5. 在启动服务之前,需要修改 php-fpm.conf 配置文件,确保 php-fpm 模块使用 www-data 用户和 www-data 用户组的身份运行。

    vim /usr/local/etc/php-fpm.conf
    로그인 후 복사

    找到以下内容并修改:

    ; Unix user/group of processes; Note: The user is mandatory. If the group is not set, the default user's group;       will be used.user = www-datagroup = www-data
    로그인 후 복사

    然后启动 php-fpm 服务:

    /usr/local/bin/php-fpm
    로그인 후 복사

    本文档未涵盖对 php-fpm 进行进一步配置的信息,如果您需要更多信息,请查阅相关文档。

  6. 配置 Nginx 使其支持 PHP 应用:

    vim /usr/local/nginx/conf/nginx.conf
    로그인 후 복사

    修改默认的 location 块,使其支持 .php 文件:

    location / {    root   html;    index  index.php index.html index.htm;}
    로그인 후 복사

    下一步配置来保证对于 .php 文件的请求将被传送到后端的 PHP-FPM 模块, 取消默认的 PHP 配置块的注释,并修改为下面的内容:

    location ~* \.php$ {    fastcgi_index   index.php;    fastcgi_pass    127.0.0.1:9000;    include         fastcgi_params;    fastcgi_param   SCRIPT_FILENAME    $document_root$fastcgi_script_name;    fastcgi_param   SCRIPT_NAME        $fastcgi_script_name;}
    로그인 후 복사

    重启 Nginx。

  7. 如果使用thinkphp,配置pathinfo:
  8. 修改第6步中的部分内容如下:
  9. location ~ \.php {            fastcgi_pass   127.0.0.1:9000;            fastcgi_index  index.php;            set $path_info "";            set $real_script_name $fastcgi_script_name;            if ($fastcgi_script_name ~ "^(.+?\.php)(/.+)$") {                set $real_script_name $1;                set $path_info $2;            }            fastcgi_param  SCRIPT_FILENAME  $document_root$real_script_name;            fastcgi_param  SCRIPT_NAME      $real_script_name;            fastcgi_param PATH_INFO $path_info;            include        fastcgi_params;        }
    로그인 후 복사
관련 라벨:
원천:php.cn
이전 기사:请问这种添加‘热门标签’的插件是什么?如下图所示 다음 기사:怎么获取手机型号
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
최신 이슈
관련 주제
더>
인기 추천
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿