1

我们正在我们的一台服务器上进行部署,并且出现以下错误。

错误:tooltwist.fip.FipException 来自服务器的未知响应:500:内部服务器错误异常:tooltwist.fip.FipException:tooltwist.fip.FipException:来自服务器的未知响应:500:内部服务器错误

查看 FIP 日志,它显示:

安装批处理时出错:tooltwist.fip.FipException:预提交命令失败:protected/pre_commit.sh tooltwist.fip.FipException:预提交命令失败:tooltwist.fip.FipServer_updateExecuter.commitTransaction 的受保护/pre_commit.sh(FipServer_updateExecuter.java :309) 在 tooltwist.fip.FipServer_updateExecuter.prepareUpdates_1_3(FipServer_updateExecuter.java:250) 在 tooltwist.fip.FipServer_updateExecuter.executeUpdates(FipServer_updateExecuter.java:142) 在 tooltwist.fip.FipServer.destination_installBatchOfFiles(FipServer.java:199) 在 tooltwist .fip.jetty.InstallBatchServlet.doPost(InstallBatchServlet.java:134) 在 javax.servlet.http.HttpServlet.service(HttpServlet.java:727) 在 javax.servlet.http.HttpServlet.service(HttpServlet.java:820) 在org.eclipse.jetty.servlet.ServletHolder。org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:426) org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:227) 的句柄(ServletHolder.java:530) .eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:931) 在 org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:361) 在 org.eclipse.jetty.server.session.SessionHandler .doScope(SessionHandler.java:186) 在 org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:867) 在 org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117) ) 在 org.eclipse.jetty.server 的 org.eclipse.jetty.server.Server.handle(Server.java:337) 的 org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:113)。org.eclipse.jetty.server.HttpConnection$RequestHandler.content(HttpConnection.java:1020) 的 HttpConnection.handleRequest(HttpConnection.java:581) org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:775)在 org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:228) 在 org.eclipse.jetty.server.HttpConnection.handle(HttpConnection.java:417) 在 org.eclipse.jetty.io.nio.SelectChannelEndPoint .run(SelectChannelEndPoint.java:474) at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:437) at java.lang.Thread.run(Thread.java:662)775)在 org.eclipse.jetty.server.HttpConnection.handle(HttpConnection.java:417)在 org.eclipse.jetty.io.nio .SelectChannelEndPoint.run(SelectChannelEndPoint.java:474) at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:437) at java.lang.Thread.run(Thread.java:662)775)在 org.eclipse.jetty.server.HttpConnection.handle(HttpConnection.java:417)在 org.eclipse.jetty.io.nio .SelectChannelEndPoint.run(SelectChannelEndPoint.java:474) at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:437) at java.lang.Thread.run(Thread.java:662)

关于错误的任何想法?

4

2 回答 2

1

几个建议: 1. 服务器上是否存在 pre_commit.sh shell 脚本。2.它有+x权限吗?

如果 FIP 是使用正常方式安装的,则不会导致问题。

于 2012-10-09T05:48:14.327 回答
1

fipserver 最初将其接收到的文件保存在目标服务器上,但保存到临时位置。收到并保存所有文件后,它会运行三个步骤来完成安装:

   1. Run a script named protected/pre-commit.sh. The normal operation of this script is to shut down the web server.
   2. For each new file:
       a) move any existing file to .fip-rollback-xxxxxx/filename.
       b) move the new file from it's temporary location to the correct location.
   3. Run a script named protected/post-commit.sh. This most commonly restarts the server.

提交前和提交后脚本是用户提供的。它们通常应该以零状态退出,因为任何其他状态都表明发生了错误。

如上一个答案中所建议的,检查这些脚本是否存在,并且它们是可执行的。如果这无法解决您的问题,请将调试插入脚本以确定它们失败的位置和原因。

于 2012-10-09T11:59:57.740 回答