【问题标题】:Rewrite URL on Glassfish with Quercus' PHP使用 Quercus 的 PHP 重写 Glassfish 上的 URL
【发布时间】:2010-07-09 19:01:16
【问题描述】:

我有 Glassfish 3 服务器并添加了 Quercus 4.0.7 以便能够在其上运行 PHP 应用程序。一切都与它完美配合。现在我试图在我的服务器上运行Question2Answer 应用程序。我能够打开应用程序,但它不允许我从一个页面导航到另一个页面,因为他们正在使用 .htaccess 文件来重写 URL。我想知道在这种情况下我们如何重写 URL?

这是 Question2Answer 的 .htaccess 里面的内容:

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]

你有什么解决办法吗?

【问题讨论】:

  • 有趣的是,有人在你发帖数小时后几乎发布了 the same question。我想我要把另一个标记为重复。

标签: url-rewriting glassfish quercus question2answer


【解决方案1】:

使用 Tuckey 的 UrlRewriteFilter(受 mod_rewrite 启发并提供类似功能)来实现重写规则。基本上,您必须:

  • 获取 Quercus 的战争并解压
  • 下载the filter并在Quercus中解压(这将把过滤罐放在WEB-INF/liburlrewrite.xmlWEB-INF下面)。
  • web.xml 中声明过滤器(参见install instructions)。
  • 将您的重写规则“移植”到urlrewrite.xml 文件。
  • 重新打包并部署战争(或将其部署为展开的存档)。

Drupal on Glassfish with clean urls using Url Rewrite Filter 的帖子讨论了这种方法。根据您的需要进行调整。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-07-26
    • 2022-01-08
    • 2013-04-29
    • 1970-01-01
    相关资源
    最近更新 更多