0 0

本地nginx服务器调用虚拟机上的php返回404错误30

本地环境:windows + nginx 1.2.4U
虚拟机:ubuntu(192.168.118.133)+php5.3.10

想用本地的nginx通过fastcgi的方式调用远程的php对php脚本进行解析
html可以正常显示,php脚本返回404错误

 

错误日志:
2012/11/04 12:14:03 [error] 2684#1876: *73 FastCGI sent in stderr: "Primary script unknown" while reading response header from upstream, client: 127.0.0.1, server: localhost, request: "GET /a.php HTTP/1.1", upstream: "fastcgi://192.168.118.133:9000", host: "www.test.cc:8000"

nginx配置

server {
        listen       8000;
        server_name  localhost;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

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

        #error_page  404              /404.html;

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

        location ~ \.php$ {
            root           D:\webserver\nginx-1.2.4\html;
            fastcgi_pass   192.168.118.133:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  D:\webserver\nginx-1.2.4\html$fastcgi_script_name;
            include        fastcgi_params;
        }
    }

 

 

php-fpm配置

 

pid = /var/run/php5-fpm.pid

error_log = /var/log/php5-fpm.log

[www]

user = www-data
group = www-data

listen = 9000

pm = dynamic

pm.max_children = 10

pm.start_servers = 4

pm.min_spare_servers = 2

pm.max_spare_servers = 6

chdir = /

PHP 
2012年11月05日 10:37

1个答案 按时间排序 按投票排序

0 0

root应该配置在server部分,而不是location ~ \.php$里面。

详细解释可以参考下面的内容:

http://serverfault.com/questions/406158/nginx-php5-fpm-file-not-found


http://www.ruby-forum.com/topic/4406072

2012年11月09日 12:52

相关推荐

    Apache Tomcat JBOSS Nginx区别

    JBoss 与 Web 服务器在同一个 Java 虚拟机中运行,Servlet 调用 EJB 不经过网络,从而大大提高运行效率,提升安全性能。 Apache、Tomcat、Jetty、Nginx 和 JBoss 都是服务器软件,但是它们的功能和特点各不相同。...

    利用autobench测试web服务器极限并发数.pdf

    它会在一次测试中调用多次 Httperf 来对 Web 服务器进行测试,每次会按照给定的参数增加并发连接数,将 Httperf 的测试结果保存为 CSV 格式的文件,该文件可以被 Excel 直接读取,方便生成测试报告。借助于 ...

    探究php底层运行机制 - shupan001的专栏 - 博客频道 - CSDN.NET1

    在请求执行过程中,Zend引擎负责将PHP源代码编译成中间表示,称为ZEND_opcodes,然后在虚拟机上执行这些指令。扩展层则提供了一系列特定功能的函数和类库,例如,MySQL扩展用于与MySQL数据库交互。 请求执行完毕后...

    php-5.4.19源代码

    4. **静态调用(Static Calls)**:现在可以在非静态方法上使用`self::`调用,增强了代码的灵活性。 5. **新内建函数**:如`array_column()`用于从多维数组中提取一列数据,`array_replace_recursive()`用于递归地...

    php-7.0(win64)版本

    - 确保你的服务器环境(如Apache或Nginx)与PHP版本兼容。 - 配置`php.ini`文件,调整PHP的设置以满足项目需求。 - 安装必要的扩展,如mysqli或pdo扩展以支持数据库连接,gd库进行图像处理等。 - 设置环境变量,将...

    php7 32位 v8dll 扩展库文件

    V8Js类提供了丰富的API,使得从PHP调用JavaScript函数、传递数据以及处理JavaScript返回的结果变得简单。 总结来说,PHP7 32位 V8DLL扩展库为PHP提供了一个强大的JavaScript执行环境,使得开发者能够在PHP项目中...

    PHP运用java的lucence搜索引擎

    JavaBridge允许PHP调用Java类和方法,它创建了一个Java虚拟机(JVM)并在PHP脚本中执行Java代码。JPC则是一种轻量级的PHP到Java的通信机制,它通过Socket通信实现PHP和Java应用的交互。 接下来,让我们详细探讨如何...

    cpp-PHP7扩展开发系列教程

    1. **环境搭建**:首先,你需要配置好开发环境,包括安装PHP源码、GCC编译器、Apache或Nginx服务器以及必要的开发工具。熟悉`phpize`、`configure`和`make`命令对于编译和安装扩展至关重要。 2. **PHP7的ZEND引擎**...

    php控制linux服务器常用功能 关机 重启 开新站点等

    使用`system()`函数可以调用Linux系统命令实现对服务器的操作控制。 1. 关于关机和重启Linux服务器,通常可以使用`shutdown`、`reboot`或者`poweroff`等命令。在PHP中,可以通过`system()`函数来调用这些命令。例如...

    ThinkInPhpInternal.rar_WEB开发_PHP_

    除此之外,PHP的错误处理、异常机制、以及与Web服务器的集成(如Apache或Nginx)也是书中的重点。了解这些内容可以帮助开发者更好地调试代码,处理运行时问题,并优化PHP应用在服务器上的部署。 书中还可能涉及PHP...

    08-基于LAMP架构部署商城系统

    小王在学习过程中逐渐熟悉了公司的业务架构,并注意到多个项目采用了LAMP架构或Nginx+Tomcat架构。为了更好地理解和掌握这些架构,小王决定首先深入学习LAMP架构,并在此基础上部署一个电商平台。目标是在虚拟机环境...

    Linux 50问面试常问问题

    答:LAMP(Linux, Apache, MySQL, PHP)和LNMP(Linux, Nginx, MySQL, PHP)是常见的Web服务器环境。安装这些组件,配置Apache或Nginx的站点配置文件,设置数据库连接,并安装PHP解释器,即可搭建Web服务环境。 39....

    lara-mados-namai:PHP框架的学习过程-Laravel

    同时,确保你的系统已安装 PHP 和 Composer,并配置好服务器环境,如 Nginx 或 Apache。 **2. MVC 架构模式** Laravel 遵循 Model-View-Controller (MVC) 设计模式,分离了业务逻辑、数据模型和用户界面。Model ...

    [整站程序]杭州家教网_jj0571.rar

    12. **部署与运维**:服务器部署可能使用Nginx或Apache等Web服务器,配合Docker容器化技术或虚拟机实现资源隔离和弹性扩展。 这个压缩包的使用可能涉及解压、安装依赖、配置环境、数据库导入、运行服务器等多个步骤...

    shell入门到进阶,脚本机动化

    例如,通过编写shell脚本,可以在多台服务器上统一执行`apt-get update`或`yum update`命令来更新系统,或者通过`dpkg -i`或`rpm -i`安装特定的软件包。 ### 自动化批量软件部署 对于LAMP(Linux + Apache + MySQL...

    Linux操作系统

    对于服务器运维,学习如何搭建LAMP(Linux、Apache、MySQL、PHP)或LNMP(Linux、Nginx、MySQL、PHP)架构,以及如何配置和优化这些服务,对于成为一名合格的系统管理员至关重要。 Linux操作系统的学习不仅限于理论...

Global site tag (gtag.js) - Google Analytics