【问题标题】:Nginx load balance with dedicated php-fpm serverNginx 负载平衡与专用 php-fpm 服务器
【发布时间】:2011-07-16 18:38:32
【问题描述】:

我用 nginx+php-fpm 和 mysql 设置了服务器。 我有另一台只安装了 php-fpm 的服务器,所以想用作负载平衡。 但是当我使用这个带有 php-fpm 作为负载均衡器的 dedacted 服务器时,打开页面时出现错误:“访问被拒绝。”

/etc/nginx/nginx.conf

user www-data;
worker_processes  3;

error_log  /var/log/nginx/error.log;
pid        /var/run/nginx.pid;

events {
    worker_connections  1024;
}

http {
    include       mime.types;
    default_type  application/octet-stream;
    server_names_hash_bucket_size 64;
    access_log  /var/log/nginx/access.log;

    sendfile        on;
    #tcp_nopush      on;

    keepalive_timeout   65;
    tcp_nodelay         on;

    #gzip                on;

    upstream php {
        server dedicatedserverip:9000;
    }

    include /etc/nginx/sites-enabled/*;
}

/etc/nginx/sites-enabled/site.org.conf

server {
    listen   81;
    server_name site.org www.site.org;
    access_log  /var/log/nginx/site.org.log;
    error_log   /var/log/nginx/site.org.log;
    root        /home/www/site.org;
    index       index.php; 

    location ~ .php$ {
        fastcgi_pass  php;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME /home/www/$fastcgi_script_name;
    }
} 

为什么会出现这个错误?当我只将 fastcgi_pass 更改为 127.0.0.1:9000 - 一切正常。

【问题讨论】:

    标签: php nginx


    【解决方案1】:

    您收到该错误是因为 PHP-FPM 服务器上不存在 PHP-FPM 文件。

    fastcgi_param SCRIPT_FILENAME /home/www/$fastcgi_script_name;

    或者(我使用这个是因为它对多个虚拟主机来说更简单)

    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

    似乎 Nginx 只是简单地向 PHP-FPM 服务器提供文件的位置,然后 PHP-FPM 服务器呈现它。最简单的解决方案是将文档根目录同步到 PHP-FPM 服务器。

    此帖可详解:http://code.google.com/p/sna/wiki/NginxWithPHPFPM

    【讨论】:

      【解决方案2】:

      如果是空白页,上面有“拒绝访问”,那是php-fpm中添加了security.limit_extensions directive造成的。

      如果您的 php-fpm 配置中没有它,它默认为 .php 并阻止 PHP 解释器解析所有其他文件类型,并在尝试这样做时产生“拒绝访问”。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-03-14
        • 1970-01-01
        • 2019-01-05
        • 1970-01-01
        • 1970-01-01
        • 2011-08-04
        相关资源
        最近更新 更多