Reescrever URL no Glassfish com PHP da Quercus
-
13-09-2020 - |
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?
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 aurlrewrite.xml
sobWEB-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.