Apache 2.4 + mod_rewrite + FastCGI (php-cgi.exe) no Windows

2

Estou tentando portar minha configuração do Mac no Windows para alguns de meus clientes.

Como o Windows não é o Mac OS, eu tenho que usar o php-cgi.exe em vez do PHP-FPM. Eu testei cada componente individualmente e tudo parece funcionar, então acredito que seja um problema somente de configuração.

No meu Mac, eu tenho esse RewriteRule :

RewriteCond %{SERVER_NAME}     ^([^.]+)\.([^.]+)\.dev$
RewriteRule ^/(.*\.php(/.*)?)$ "fcgi://127.0.0.1:9000%{DOCUMENT_ROOT}/%2/%1/$1" [P]

Eu adicionei o RewriteCond para que você possa ver de onde %1 e %2 estão vindo.

No meu Mac, funciona bem, pois %{DOCUMENT_ROOT} começa com / , mas no Windows %{DOCUMENT_ROOT} começa com C: .

Ao testar essa configuração, ele produz esse erro:

Proxy Error

The proxy server received an invalid response from an upstream server. The proxy server could not handle the request GET /.

Reason: DNS lookup failure for: 127.0.0.1:9000c:

Aparece (olhando em error.log) que 127.0.0.1:9000:C: está sendo considerado como parte de um endereço IPv6 e é transformado como [127.0.0.1:9000:C:] no log.

Se eu tentar isolar as duas partes com / :

RewriteCond %{SERVER_NAME}     ^([^.]+)\.([^.]+)\.dev$
RewriteRule ^/(.*\.php(/.*)?)$ "fcgi://127.0.0.1:9000/%{DOCUMENT_ROOT}/%2/%1/$1" [P]
                                                     ^

Eu recebo este erro:

No input file specified.

Na verdade, recebi este erro para tudo o que testei até agora.

Existe uma solução?

    
por Matworms 08.07.2014 / 10:43

0 respostas