Перепишите URL на Glassfish с помощью Quercus 'PHP - PullRequest
2 голосов
/ 09 июля 2010

У меня есть сервер Glassfish 3 и я добавил Quercus 4.0.7 , чтобы иметь возможность запускать на нем приложения PHP. С ним все отлично работает. Сейчас я пытаюсь запустить приложение Question2Answer на моем сервере. Мне удалось открыть приложение, но оно не позволяет мне переходить от страницы к странице, потому что они используют файл .htaccess для перезаписи URL. Мне было интересно, как мы переписать URL в этом случае?

Вот что внутри .htaccess Вопроса2:

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]

У вас есть какие-нибудь решения для этого?

1 Ответ

3 голосов
/ 10 июля 2010

Используйте Tuckey's UrlRewriteFilter (который вдохновлен mod_rewrite и предлагает аналогичные функциональные возможности) для реализации правил перезаписи.По сути, вам необходимо:

  • Получить войну Quercus и распаковать ее
  • Скачать фильтр и распаковать его внутри Quercus (это поместит банку фильтравнутри WEB-INF/lib и urlrewrite.xml в WEB-INF).
  • Объявите фильтр в web.xml (см. инструкции по установке ).
  • "Порт"Ваши правила перезаписи в файл urlrewrite.xml.
  • Переупаковка и развертывание войны (или развертывание в виде взорванного архива).

Пост Drupal на Glassfish счистый URL-адрес с использованием Url Rewrite Filter обсуждает этот подход.Адаптируйте его под свои нужды.

...