[英]HTTP Status 500 - PHP FastCGI instance failed
我已经将JavaBridge添加到apache-tomcat / webapps /。
当我尝试在浏览器中打开JavaBridge( localhost:8080/JavaBridge
)时,我得到了
HTTP Status 500 - PHP FastCGI instance failed.
没有它我假设c / p JavaBridge.jar,php-script.jar和php-servlet.jar,并且创建test.php是没用的。
我该如何解决这个问题?
我在JasperReports Server 6.0.1上使用tomcat v7
其余的错误:
type Exception report
message PHP FastCGI instance failed.
description The server encountered an internal error that prevented it from fulfilling this request.
exception
javax.servlet.ServletException: PHP FastCGI instance failed.
php.java.servlet.fastcgi.FastCGIServlet.execute(FastCGIServlet.java:448)
php.java.servlet.fastcgi.FastCGIServlet.handle(FastCGIServlet.java:481)
php.java.servlet.fastcgi.FastCGIServlet.doGet(FastCGIServlet.java:521)
javax.servlet.http.HttpServlet.service(HttpServlet.java:621)
javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
php.java.servlet.PhpCGIFilter.doFilter(PhpCGIFilter.java:126)
root cause
php.java.bridge.http.FCGIConnectionException
php.java.bridge.http.FCGIInputStream.read(FCGIInputStream.java:58)
php.java.servlet.fastcgi.FastCGIServlet.parseBody(FastCGIServlet.java:362)
php.java.servlet.fastcgi.FastCGIServlet.execute(FastCGIServlet.java:433)
php.java.servlet.fastcgi.FastCGIServlet.handle(FastCGIServlet.java:481)
php.java.servlet.fastcgi.FastCGIServlet.doGet(FastCGIServlet.java:521)
javax.servlet.http.HttpServlet.service(HttpServlet.java:621)
javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
php.java.servlet.PhpCGIFilter.doFilter(PhpCGIFilter.java:126)
root cause
java.io.IOException: Protocol error
php.java.bridge.http.FCGIInputStream.doRead(FCGIInputStream.java:67)
php.java.bridge.http.FCGIInputStream.read(FCGIInputStream.java:54)
php.java.servlet.fastcgi.FastCGIServlet.parseBody(FastCGIServlet.java:362)
php.java.servlet.fastcgi.FastCGIServlet.execute(FastCGIServlet.java:433)
php.java.servlet.fastcgi.FastCGIServlet.handle(FastCGIServlet.java:481)
php.java.servlet.fastcgi.FastCGIServlet.doGet(FastCGIServlet.java:521)
javax.servlet.http.HttpServlet.service(HttpServlet.java:621)
javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
php.java.servlet.PhpCGIFilter.doFilter(PhpCGIFilter.java:126)
note The full stack trace of the root cause is available in the Apache Tomcat/7.0.42 logs.
将文件从C:/PHP
复制到C:/Program Files/PHP
JavaBridge.war有不正确的php-cgi二进制文件,并使用cgi目录中的php.ini。 它必须安装在C:/Program Files/PHP
(C:/ PHP不起作用,除非在web.xml中以某种方式更改了init-parmas)
检查这2个问题。
1)Windows安装要求php.ini在C:\\WINDOWS
,除非您使用以下注册表项将其放在其他位置: HKEY_LOCAL_MACHINE\\SOFTWARE\\PHP\\IniFilePath
。
2)只是为了完整性,而不是JavaBridge问题:不要在Windows上使用PHP安装程序,不提供所有内容。 而是获取二进制分发并手动解压缩到C:/Program Files/PHP
,将C:/Program Files/PHP
添加到Windows路径中,添加PHPRC=C:/Program Files/PHP env var
。 修改php.ini
以更改extensions_dir=C:/Program Files/PHP/ext
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.