Pergunta

Eu tenho o servidor Glassfish 3 e adicionei Quercus 4.0.7 para poder executar aplicativos PHP nele.Tudo funciona perfeitamente com isso.Agora estou tentando correr Pergunta2Resposta aplicativo no meu servidor.Consegui abrir o aplicativo, mas ele não me permite navegar de uma página para outra porque eles estão usando o arquivo .htaccess para reescrever o URL.Eu queria saber como reescrevemos o URL neste caso?

Aqui está o que o .htaccess do Question2Answer contém:

DirectoryIndex index.php
RewriteEngine On
#RewriteBase /your-sub-directory
RewriteCond %{REQUEST_URI} ^(.*)//(.*)$
RewriteRule . %1/%2 [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^.*$ index.php?qa-rewrite=$0&%{QUERY_STRING} [L]

Você tem alguma solução para isso?

Foi útil?

Solução

Use o Tuckey UrlRewriteFilter (que é inspirado em mod_rewrite e oferece funcionalidades semelhantes) para implementar as regras de reescrita.Basicamente, você terá que:

  • Obtenha a guerra de Quercus e descompacte-a
  • Download o filtro e descompacte-o dentro do Quercus (isso colocará o frasco do filtro dentro WEB-INF/lib e a urlrewrite.xml sob WEB-INF).
  • Declare o filtro no web.xml (Veja o instruções de instalação).
  • "Porte" suas regras de reescrita para o urlrewrite.xml arquivo.
  • Reempacote e implante a guerra (ou implante-a como um arquivo explodido).

A postagem Drupal no Glassfish com URLs limpos usando o filtro de reescrita de URL discute essa abordagem.Adapte-o às suas necessidades.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top