Unix 系统锟铰碉拷 Nginx 1.4.x

锟斤拷锟侥碉拷锟斤拷锟斤拷使锟斤拷 PHP-FPM 为 Nginx 1.4.x HTTP 锟斤拷锟斤拷锟斤拷锟斤拷装锟斤拷锟斤拷锟斤拷 PHP 锟斤拷说锟斤拷锟斤拷锟斤拷示锟斤拷

锟斤拷指锟较假讹拷锟斤拷锟窖撅拷锟斤拷源锟斤拷锟斤拷晒锟斤拷锟斤拷锟� Nginx锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷募锟斤拷锟斤拷锟斤拷锟斤拷募锟斤拷锟轿伙拷锟� /usr/local/nginx锟斤拷 锟斤拷锟斤拷锟绞癸拷锟斤拷锟斤拷锟斤拷锟绞斤拷锟饺★拷锟� Nginx锟斤拷锟斤拷慰锟� » Nginx Wiki 锟斤拷锟斤拷锟秸憋拷锟侥碉拷锟斤拷砂锟阶帮拷锟�

锟斤拷锟侥碉拷锟斤拷锟斤拷锟斤拷 Nginx 锟斤拷锟斤拷锟斤拷锟侥伙拷锟斤拷锟斤拷锟矫o拷锟斤拷锟斤拷通锟斤拷 80 锟剿匡拷锟结供 PHP 应锟矫的达拷锟斤拷锟斤拷锟斤拷锟斤拷 锟斤拷锟斤拷锟斤拷锟揭拷锟斤拷锟斤拷锟斤拷牡锟斤拷锟轿э拷陌锟阶帮拷锟斤拷锟街革拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟� Nginx 锟斤拷 PHP-FPM 锟斤拷锟侥碉拷锟斤拷

锟斤拷要注锟斤拷锟斤拷牵锟斤拷锟斤拷牡锟揭伙拷锟绞癸拷锟� 'x' 锟斤拷锟斤拷示锟芥本锟脚o拷锟斤拷锟斤拷锟绞碉拷锟斤拷锟斤拷锟斤拷 'x' 锟芥换为锟斤拷应锟侥版本锟脚★拷

  1. 锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷 Nginx Wiki » 锟斤拷装 页锟斤拷锟皆伙拷取锟斤拷锟斤拷锟斤拷锟斤拷系统锟较帮拷装 Nginx锟斤拷

  2. 锟斤拷取锟斤拷锟斤拷压 PHP 源锟斤拷锟斤拷:

    tar zxf php-x.x.x
    
  3. 锟斤拷锟矫诧拷锟斤拷锟斤拷 PHP锟斤拷锟节此诧拷锟斤拷锟斤拷锟斤拷锟斤拷使锟矫很讹拷选锟斤拷锟皆讹拷锟斤拷 PHP锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷某些锟斤拷展锟饺★拷 锟斤拷锟斤拷 ./configure --help 锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷目锟斤拷锟窖★拷锟斤拷宓ワ拷锟� 锟节憋拷示锟斤拷锟叫o拷锟斤拷锟角斤拷锟斤拷锟叫帮拷锟斤拷 PHP-FPM 锟斤拷 MySQL 支锟街的硷拷锟斤拷锟矫★拷

    cd ../php-x.x.x
    ./configure --enable-fpm --with-mysql
    make
    sudo make install
    
  4. 锟斤拷锟斤拷锟斤拷锟斤拷锟侥硷拷锟斤拷锟斤拷锟斤拷锟戒复锟狡碉拷锟斤拷确锟斤拷位锟矫★拷

    cp php.ini-development /usr/local/php/php.ini
    cp /usr/local/etc/php-fpm.conf.default /usr/local/etc/php-fpm.conf
    cp sapi/fpm/php-fpm /usr/local/bin
    
  5. 锟斤拷要锟斤拷锟斤拷锟斤拷锟窖碉拷锟角o拷锟斤拷锟斤拷募锟斤拷锟斤拷锟斤拷冢锟斤拷锟斤拷锟街� Nginx 锟斤拷锟斤拷锟斤拷锟酵碉拷锟斤拷说锟� PHP-FPM 模锟介, 锟皆憋拷锟斤拷锟斤拷锟杰讹拷锟斤拷疟锟阶拷锟侥癸拷锟斤拷锟斤拷

    锟斤拷 php.ini 锟侥硷拷锟叫碉拷锟斤拷锟斤拷锟斤拷 cgi.fix_pathinfo 锟斤拷锟斤拷为 0 锟斤拷

    锟斤拷 php.ini:

    vim /usr/local/php/php.ini
    

    锟斤拷位锟斤拷 cgi.fix_pathinfo= 锟斤拷锟斤拷锟斤拷锟睫革拷为锟斤拷锟斤拷锟斤拷示锟斤拷

    cgi.fix_pathinfo=0
    
  6. 锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷之前锟斤拷锟斤拷要锟睫革拷 php-fpm.conf 锟斤拷锟斤拷锟侥硷拷锟斤拷确锟斤拷 php-fpm 模锟斤拷使锟斤拷 www-data 锟矫伙拷锟斤拷 www-data 锟矫伙拷锟斤拷锟斤拷锟斤拷锟斤拷锟叫★拷

    vim /usr/local/etc/php-fpm.conf
    

    锟揭碉拷锟斤拷锟斤拷锟斤拷锟捷诧拷锟睫改o拷

    ; 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-data
    group = www-data
    

    然锟斤拷锟斤拷锟斤拷 php-fpm 锟斤拷锟斤拷

    /usr/local/bin/php-fpm
    

    锟斤拷锟侥碉拷未锟斤拷锟角讹拷 php-fpm 锟斤拷锟叫斤拷一锟斤拷锟斤拷锟矫碉拷锟斤拷息锟斤拷锟斤拷锟斤拷锟斤拷锟揭拷锟斤拷锟斤拷锟较拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷牡锟斤拷锟�

  7. 锟斤拷锟斤拷 Nginx 使锟斤拷支锟斤拷 PHP 应锟矫o拷

    vim /usr/local/nginx/conf/nginx.conf
    

    锟睫革拷默锟较碉拷 location 锟介,使锟斤拷支锟斤拷 .php 锟侥硷拷锟斤拷

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

    锟斤拷一锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷证锟斤拷锟斤拷 .php 锟侥硷拷锟斤拷锟斤拷锟襟将憋拷锟斤拷锟酵碉拷锟斤拷说锟� PHP-FPM 模锟介, 取锟斤拷默锟较碉拷 PHP 锟斤拷锟矫匡拷锟阶拷停锟斤拷锟斤拷薷锟轿拷锟斤拷锟斤拷锟斤拷锟捷o拷

    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锟斤拷

    sudo /usr/local/nginx/sbin/nginx -s stop
    sudo /usr/local/nginx/sbin/nginx
    
  8. 锟斤拷锟斤拷锟斤拷锟斤拷锟侥硷拷锟斤拷

    rm /usr/local/nginx/html/index.html
    echo "<?php phpinfo(); ?>" >> /usr/local/nginx/html/index.php
    

    锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟� http://localhost锟斤拷锟斤拷锟斤拷锟斤拷示 phpinfo() 锟斤拷

通锟斤拷锟斤拷锟较诧拷锟斤拷锟斤拷锟斤拷茫锟絅ginx 锟斤拷锟斤拷锟斤拷锟斤拷锟节匡拷锟斤拷锟斤拷 SAPI SAPI 模锟斤拷姆锟绞街э拷锟� PHP 应锟斤拷锟剿★拷 锟斤拷然锟斤拷锟斤拷锟斤拷 Nginx 锟斤拷 PHP 锟斤拷锟斤拷锟矫o拷锟斤拷锟叫很讹拷锟斤拷玫锟窖★拷睿� 锟斤拷锟节讹拷应锟斤拷源锟斤拷锟斤拷目录执锟斤拷 ./configure --help 锟斤拷锟斤拷锟侥革拷锟斤拷锟斤拷锟斤拷选锟筋。