Erro ao tentar efetuar login no Redmine através do proxy reverso do IIS 7.5

1

Estou tentando configurar o Redmine como um subdiretório do site de intranet do nosso departamento, e também para renomeá-lo como "Workflow" usando a extensão de regravação de URL do IIS.

Eu o tenho "trabalhando", pois ele servirá a página com todas as reescritas corretas no URL e no código HTML. No entanto, quando tento enviar um formulário (incluindo o login para redminar), o IIS me apresenta um dos seguintes erros:

Your browser sent a request that this server could not understand.

ou

The specified CGI application encountered an error and the server terminated the process.

Aqui está a configuração:

  • Redmine instalado em uma máquina local do Windows XP usando o Bitnami instalador tudo em um, que inclui:
    • Apache 2
    • Ruby-on-Rails
    • MySQL
    • Redmine
    • Fino
  • O Redmine é executado localmente em http: / localhost / redmine
  • O Redmine é executado na http da intranet: /146.18.236.xxx/redmine
  • Windows Server + IIS 7.5 que atende um aplicativo da Web de intranet do ASP.NET mydept.mycompany.com
  • Extensões de IIS Url Rewrite e AAR instaladas
  • Configurações de proxy reverso para o IIS (mostrado abaixo) para veicular o Redmine em mydept.mycompany.com/workflow
<rewrite>
    <rules>
        <rule name="Route requests for workflow to redmine server" stopProcessing="true">
            <match url="^workflow/?(.*)" />
            <conditions>
                <add input="{CACHE_URL}" pattern="^(https?)://" />
            </conditions>
            <action type="Rewrite" url="{C:1}://146.18.236.xxx/redmine/{R:1}" logRewrittenUrl="true" />
            <serverVariables> 
                <set name="HTTP_ACCEPT_ENCODING" value="" /> 
                <set name="ORIGINAL_HOST" value="{HTTP_HOST}" /> 
            </serverVariables> 
        </rule>
    </rules>
    <outboundRules rewriteBeforeCache="true">
        <clear />
        <preConditions>
            <preCondition name="isHTML" logicalGrouping="MatchAny">
                <add input="{RESPONSE_CONTENT_TYPE}" pattern="^text/html" />
                <add input="{RESPONSE_CONTENT_TYPE}" pattern="^text/plain" />
                <add input="{RESPONSE_CONTENT_TYPE}" pattern="^application/.*xml" />
            </preCondition>
            <preCondition name="isRedirection">
                <add input="{RESPONSE_STATUS}" pattern="3\d\d" />
            </preCondition>
        </preConditions>
        <rule name="Rewrite outbound relative URLs in tags" preCondition="isHTML">
            <match filterByTags="A, Area, Base, Form, Frame, Head, IFrame, Img, Input, Link, Script" pattern="^/redmine/(.*)" />
            <action type="Rewrite" value="/workflow/{R:1}" />
        </rule>
        <rule name="Rewrite outbound absolute URLs in tags" preCondition="isHTML">
            <match filterByTags="A, Area, Base, Form, Frame, Head, IFrame, Img, Input, Link, Script" pattern="^(https?)://146.18.236.xxx/redmine/(.*)" />
            <action type="Rewrite" value="{R:1}://mydept.mycompany.com/workflow/{R:2}" />
        </rule>
        <rule name="Rewrite tags with hypenated properties missed by IIS bug" preCondition="isHTML"> <!-- http://forums.iis.net/t/1200916.aspx -->
             <match filterByTags="None" customTags="" pattern="(\baction=&quot;|\bsrc=&quot;|\bhref=&quot;)/redmine/(.*?)(&quot;)" />
            <conditions logicalGrouping="MatchAll" trackAllCaptures="true" />
            <action type="Rewrite" value="{R:1}/workflow/{R:2}{R:3}" />
        </rule>
        <rule name="Rewrite Location Header" preCondition="isRedirection">
            <match serverVariable="RESPONSE_LOCATION" pattern="^http://[^/]+/(.*)" />
            <conditions>
                <add input="{ORIGINAL_URL}" pattern=".+" />
                <add input="{URL}" pattern="^/(workflow|redmine)/.*" />
            </conditions>
            <action type="Rewrite" value="http://{ORIGINAL_URL}/{C:1}/{R:1}" />
        </rule>
    </outboundRules>
</rewrite>
<urlCompression dynamicCompressionBeforeCache="false" />

Qualquer ajuda que você possa fornecer seria apreciada. Tenho a impressão de que estou perto e de que é apenas um pequeno cenário aqui ou ali, mas parece que não consigo dar certo.

    
por dneaster3 30.09.2013 / 21:56

1 resposta

1

Eu percebo que pode ser um pouco tarde, mas você marcou a caixa "acrescentar seqüência de consulta" para a regra de entrada no Gerenciador do IIS? Eu tive muitos problemas estranhos até que percebi que tinha desmarcado essa caixa (a conselho de algum blog). Verificá-lo parece resolver as coisas para mim (rodando o Redmine 2.3.3 atrás do IIS 7 configurado como proxy reverso).

    
por 21.10.2013 / 19:42