Heim >Backend-Entwicklung >PHP-Tutorial >【转】nginx+php

【转】nginx+php

WBOY
WBOYOriginal
2016-06-23 14:36:381027Durchsuche

apt-get install libjpeg-devel libpng-devel freetype-devel libxml2-devel mysql-devel pcre-devel bzip2-devel

./configure ?prefix=/usr/local/nginx ?http-fastcgi-temp-path=/usr/local/nginx/fastcgi_temp/ ?http-proxy-temp-path=/usr/local/nginx/proxy_temp/ ?without-http_upstream_ip_hash_module ?without-http_geo_module ?without-http_memcached_module ?without-http_map_module ?without-http_ssi_module ?with-http_ssl_module ?with-openssl=/usr/local/ssl/lib

要注意的是,如果要加SSL支持,需要用openssl 097的版本来编译。http://www.openssl.org/source/openssl-0.9.7m.tar.gz

编译php

./configure ?prefix=/usr/local/php ?enable-mbstring ?with-mysql=/usr/ ?disable-dom ?enable-fastcgi ?with-gd ?with-config-file-path=/usr/local/php/etc/ ?with-zlib-dir=/usr ?with-jpeg-dir=/usr ?with-png-dir=/usr ?without-pear ?without-sqlite ?enable-force-cgi-redirect ?with-freetype-dir ?enable-fpm ?with-fpm-conf=/usr/local/php/etc/fpm.conf ?with-fpm-log=/usr/local/nginx/logs/fpm.log ?with-fpm-pid=/usr/local/nginx/logs/fpm.pid

server {
        listen       80;
        server_name xxx.net;

        charset gb2312;

        location / {
            root /data/www/xxxx/;
            index index.html index.htm index.php;
            allow   1.1.1.1;
            deny    all;

        }
       location ~ \.php$ {
       root           /data/www/xxxx/;
       include       /etc/fcgi.conf;
       fastcgi_pass   127.0.0.1:1026;
       fastcgi_index index.php;
         }
    }

其中/etc/fcgi.conf内容为

fastcgi_param GATEWAY_INTERFACE CGI/1.1;
fastcgi_param SERVER_SOFTWARE    nginx;
fastcgi_param QUERY_STRING       $query_string;
fastcgi_param REQUEST_METHOD     $request_method;
fastcgi_param CONTENT_TYPE       $content_type;
fastcgi_param CONTENT_LENGTH     $content_length;
fastcgi_param SCRIPT_FILENAME    $document_root$fastcgi_script_name;
fastcgi_param SCRIPT_NAME        $fastcgi_script_name;
fastcgi_param REQUEST_URI        $request_uri;
fastcgi_param DOCUMENT_URI       $document_uri;
fastcgi_param DOCUMENT_ROOT      $document_root;
fastcgi_param SERVER_PROTOCOL    $server_protocol;
fastcgi_param REMOTE_ADDR        $remote_addr;
fastcgi_param REMOTE_PORT        $remote_port;
fastcgi_param SERVER_ADDR        $server_addr;
fastcgi_param SERVER_PORT        $server_port;
fastcgi_param SERVER_NAME        $server_name;
# PHP only, required if PHP was built with ?enable-force-cgi-redirect
fastcgi_param REDIRECT_STATUS    200;

用lighttpd的spawn-fcgi和spawn-php.sh

#!/bin/bash

## ABSOLUTE path to the spawn-fcgi binary
SPAWNFCGI=”/usr/local/nginx/sbin/spawn-fcgi”

## ABSOLUTE path to the PHP binary
FCGIPROGRAM=”/usr/local/bin/php-cgi”

## TCP port to which to bind on localhost
FCGIPORT=”1026″

## number of PHP children to spawn
PHP_FCGI_CHILDREN=10

## maximum number of requests a single PHP process can serve before it is restarted
PHP_FCGI_MAX_REQUESTS=1000

## IP addresses from which PHP should access server connections
FCGI_WEB_SERVER_ADDRS=”127.0.0.1″

# allowed environment variables, separated by spaces
ALLOWED_ENV=”ORACLE_HOME PATH USER”

## if this script is run as root, switch to the following user
USERID=nobody
GROUPID=nobody

chongqi

#!/bin/bash
killall -9 nginx php-cgi ; sleep 1 ;/usr/local/nginx/sbin/spawn-php.sh ; nginx

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:php json_encode unicode decodeNächster Artikel:lighttpd+mysql+php