【问题标题】:Rewrite GET parameters with .htaccess使用 .htaccess 重写 GET 参数
【发布时间】:2021-03-05 16:47:36
【问题描述】:

我正在尝试将 htaccess 上的 get 参数重写为 url 更改,如下所示:

example.com/test.php?action=value1&step=value2

example.com/test/value1/value2

我试过了:

RewriteEngine on
 RewriteRule ^([a-z]{2,2})/([a-zA-Z0-9_-]+)$ index.php?lang=$1&page=$2

但它不起作用..我已经启用了 apache2 rewrite..

我该怎么做??

【问题讨论】:

  • @RavinderSingh13 好的,谢谢你的信息!

标签: apache .htaccess mod-rewrite url-rewriting friendly-url


【解决方案1】:

对于您显示的示例,您能否尝试以下操作。 请在测试您的 URL 之前清除您的浏览器缓存。

RewriteEngine ON
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]*)/([^/]*)/([^/]*)/?$ $1.php?action=$2&step=$3 [L]

【讨论】:

  • 它有效,但如果我删除最后一个 /,我会得到 404。
  • @kanohn,如果您的 test.php 存在于 .htaccess 存在的同一路径中,请告诉我吗?谢谢。
  • @kanohn,尝试将最后一条规则更改为RewriteRule ^([^/]*)/([^/]*)/([^/]*)/?$ /$1.php?action=$2&step=$3 [L] 并尝试一次?请确保在测试您的 URL 之前清除浏览器缓存
  • 感谢您的帮助,但如果我删除最后一个 /.. 仍然无法正常工作,我正在清理缓存。
  • 我发现此链接有效,但有办法同时对所有文件执行此操作吗? taniarascia.com/rewrite-query-string-to-path-with-htaccess
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-05-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多