【问题标题】:.htaccess use parameter from request_uri and query_string.htaccess 使用 request_uri 和 query_string 中的参数
【发布时间】:2016-04-13 14:46:50
【问题描述】:

我尝试调用具有这种结构的页面:

/page/my-selection.html?p=1
/page/my-selection2.html?p=3
/page/my-selection3.html?p=6

其中 my-selection, my-selection2, ... 是数据库键,p 是分页。 我想将它重定向到一个页面上,这具有所有的魔力,但是我如何使用 mod_rewrite 来使用两个 RewriteCond 的变量?

我试过这个方法,有点不行:

RewriteCond %{REQUEST_URI} page/(.*)\.html [NC]
RewriteCond %{QUERY_STRING} ^p=(.*)
RewriteRule page/(.*)\.html$ /rewrites/page.php?selection=$1&pagination=$2 [NC]

例子:

  • /page/my-selection.html?p=1 应该重定向到 /rewrites/page.php?selection=my-selection&pagination=1
  • /page/my-selection2.html?p=3 应该重定向到 /rewrites/page.php?selection=my-selection2&pagination=3
  • /page/my-selection3.html?p=6 应该重定向到
    /rewrites/page.php?selection=my-selection3&pagination=6

有什么想法吗?!

【问题讨论】:

    标签: apache .htaccess mod-rewrite


    【解决方案1】:

    尝试:

    RewriteCond %{QUERY_STRING} ^p=(.*)
    RewriteRule ^page/(.*)\.html$ /rewrites/page.php?selection=$1&pagination=%1 [NC,L]
    

    RewriteRule 反向引用:这些是 $N 形式的反向引用 (0 RewriteCond 反向引用:这些是 %N (1 http://httpd.apache.org/docs/2.2/mod/mod_rewrite.html#rewritecond

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-02-13
      • 2022-01-04
      • 2011-11-06
      • 2017-12-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多