mod_rewrite后获取变量

发布于 2024-12-17 13:59:45 字数 351 浏览 0 评论 0原文

我有一组遵循以下 htaccess 规则的产品页面:

RewriteCond %{REQUEST_FILENAME} !-s
RewriteCond %{REQUEST_URI} ^/([0-9]+)\-(.+)\.html
RewriteRule ^(.*)$ /product/index.php?prod=%1-%2 [L]

将它们重写为:example.com/123-1234.html。

我的问题是我无法再将额外的 $_GET 变量传递到页面 - IE:example.com/123-1234.html?coupon=something123。

有什么办法可以做到这一点吗?

I have a set of product pages that obey the following htaccess rule:

RewriteCond %{REQUEST_FILENAME} !-s
RewriteCond %{REQUEST_URI} ^/([0-9]+)\-(.+)\.html
RewriteRule ^(.*)$ /product/index.php?prod=%1-%2 [L]

Which rewrites them to: example.com/123-1234.html.

My problem is that I can no longer pass additional $_GET variables to the page - IE: example.com/123-1234.html?coupon=something123.

Is there any way to do this?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

怀念你的温柔 2024-12-24 13:59:45

您正在寻找 QSA,查询字符串附加

RewriteCond %{REQUEST_FILENAME} !-s
RewriteCond %{REQUEST_URI} ^/([0-9]+)\-(.+)\.html
RewriteRule ^(.*)$ /product/index.php?prod=%1-%2 [L,QSA]

Your looking for QSA, Query String Append

RewriteCond %{REQUEST_FILENAME} !-s
RewriteCond %{REQUEST_URI} ^/([0-9]+)\-(.+)\.html
RewriteRule ^(.*)$ /product/index.php?prod=%1-%2 [L,QSA]
高跟鞋的旋律 2024-12-24 13:59:45

添加 QSA 标志以传递现有查询字符串参数

RewriteRule . /product/index.php?prod=%1-%2 [QSA,L]

还将匹配编辑为 。和 ^.*$ 在这种情况下是等效的

Add the QSA flag to pass along existing query string params

RewriteRule . /product/index.php?prod=%1-%2 [QSA,L]

Also edited match as . and ^.*$ are equivalent in this case

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文