iis HTTP错误502.3 -错误的网关

4ngedf3f  于 2022-11-12  发布在  其他
关注(0)|答案(2)|浏览(658)

我正在尝试在IIS上运行Rails,我遵循了Scott Hanselman提到的here步骤。
以下是一些可能有所帮助的信息:

  • 导轨版本:5.1.4
  • Ruby版本:2.3.3

在我按照设置步骤操作之后,我遇到了这个问题
HTTP错误502.3 -网关错误
尝试路由请求时出现连接错误。
最可能的原因:

  • CGI应用程序未返回一组有效的HTTP错误。
  • 由于父网关中的错误,充当代理或网关的服务器无法处理请求。

您可以尝试的事项:

  • 使用DebugDiag对CGI应用程序进行故障排除。
  • 确定是代理还是网关导致了此错误。

下面是我的web.config文件内容。

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
  <system.webServer>
    <handlers>
      <add name="httpplatformhandler" path="*" verb="*" modules="httpPlatformHandler" resourceType="Unspecified" requireAccess="Script" />
    </handlers>
    <httpPlatform processPath="C:\RailsInstaller\Ruby2.3.3\bin\ruby.exe" arguments="&quot;C:\RailsInstaller\Ruby2.3.3\bin\rails&quot; server -p %HTTP_PLATFORM_PORT% -b 127.0.0.1" startupTimeLimit="200" stdoutLogEnabled="true" stdoutLogFile="rails.log">
      <environmentVariables>
        <environmentVariable name="RAILS_ENV" value="development" />
      </environmentVariables>
    </httpPlatform>
    <directoryBrowse enabled="true" showFlags="Date, Time, Size, Extension" />
  </system.webServer>
</configuration>

我不确定是什么问题,我错过了什么配置!

kiayqfof

kiayqfof1#

尝试使用下面的web.config设置,并首先将项目添加到目录C:\inetpub\wwwroot\中:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
  <system.webServer>
    <handlers>
      <add name="httpplatformhandler" path="*" verb="*"
        modules="httpPlatformHandler"
        resourceType="Unspecified" requireAccess="Script" />
    </handlers>
    <httpPlatform stdoutLogEnabled="true"
      startupTimeLimit="20"
      processPath="C:\Ruby21\bin\ruby.exe"
      arguments="C:\inetpub\wwwroot\rails_on_iis\bin\rails server -p %HTTP_PLATFORM_PORT% -b 127.0.0.1 -e production">
    </httpPlatform>
  </system.webServer>
</configuration>
j0pj023g

j0pj023g2#

你可以读这个comments

索米亚

我确实喜欢它在帖子中说的,但我的应用程序显示HTTP错误502. 3-坏网关在尝试路由请求时出现连接错误。最可能的原因:CGI应用程序没有返回一组有效的HTTP错误。作为代理或网关的服务器由于父网关中的错误而无法处理请求。当通过IIS管理器浏览文件时,我也得到了同样的错误。但在使用webrick运行rails应用程序时,它的工作正常。知道我在这里做错了什么吗?

杰索

嘿,谢谢你的这篇文章!我一直在努力解决这个问题,我想知道你是如何让这个工作的。httpPlatformHandler只支持IIS8.0+,这建议2012 r2,而且RubyOneclickInstaller目前还不完全支持2012r2.2008--当我尝试安装ruby git时,它并没有完全安装在我的全新AWS 2012 r2测试用例上。听起来很有希望,不过。我得到了我的应用程序(甚至使用libV 8)运行在2008 r2上的web brick上,但对上面显示的XML配置没有任何兴趣(我得到错误).我试图安装IIS8.0限制版本拒绝安装,以及httpPlatformHandler。您使用的具体平台是什么?再次感谢您花时间编写这些内容。我使用的是ruby安装程序而不是rails安装程序。这就是为什么git没有安装。

HostForLIFE.eu

很棒的信息!祝贺微软发布这个HttpPlatformHandler。在Windows环境下运行Ruby真的很有趣。我们认为要在Rails上运行Ruby,最好使用JRuby。无论如何,这真的很有趣。我们真的很期待看到你的下一次更新。此致
非常感谢这篇伟大的文章!我得到了一个错误-也许你可以看看我的问题堆栈溢出,看看你是否知道答案?
在此stackoverflow post中继续讨论

相关问题