【问题标题】:Apache rewrite rule can't output "?" as argumentApache 重写规则无法输出“?”作为论据
【发布时间】:2011-07-02 02:44:53
【问题描述】:

我添加了一个 Apache 重写规则来将静态静态 URL 转换为 PHP URL,但是我会错过问号后面的输出。

例如:

重写规则测试/([^/]+)/([^/]+)/([^/]+) 48/thread.php?tid=123 [L]

但似乎每次我输入 http://www.exmple.com/new_sr/test/hi/1d62c59da779043b2f6bda467fdae41a/

我只是得到网址

/new_sr/48/thread.php

但我希望得到网址

48/thread.php?tid=123

"?tid=123" 被丢弃。

为什么?

【问题讨论】:

  • 尝试谷歌搜索“查询字符串”,您需要单独/特别对待它。
  • 如何单独处理?我需要额外的规则或标志吗?

标签: apache url-rewriting


【解决方案1】:

试试这个,

RewriteRule test/([^/]*)/([^/]*)/([^/]*) 48/thread.php?tid=123 [L]

顺便说一句,您可以在此链接中测试您的规则:http://martinmelin.se/rewrite-rule-tester/

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-06-30
    • 2016-08-09
    • 2011-09-02
    • 2011-10-26
    • 1970-01-01
    相关资源
    最近更新 更多