繁体   English   中英

用多个参数php重写URL

[英]Rewrite URL with multiple parameters php

我有如下所示的页面重定向 URL,其中包含多个参数。

http://example.com/search.php?layout=details&Keyword=mobile&view=product&CategoryId=1026&product_id=93477

从那个 URL 我取所有参数值来从数据库中获取数据。

所以当我加载这个页面时,我需要显示最用户友好的 URL,如下所示。 在该 URL 中应仅包含 product_id 的值,即我正在使用我的重定向 URL

http://example.com/93477.htm

我试图重写这个 URL,如下所示。 但是我不能使用参数“categoryId”和“keyword”

重写 ^/([a-zA-Z0-9/-]+).htm /search.php?layout=details&view=product&Keyword=$3&CategoryId=$2&product_id=$1 最后;

请任何人帮助我成功完成它..

问候,

维尼什·库马克

试试这位朋友

RewriteEngine on
RewriteCond %{THE_REQUEST} \s/search\.php\?layout=details&Keyword=([^&]*)&view=product&CategoryId=([^&]*)&product_id=([^&]*) [NC]
RewriteRule ^ /%2/%3/%1? [L,NE,R=302]
RewriteRule ^([^/]+)/([^/]+)/([^/]+)/?$ /search.php?layout=details&Keyword=$2&view=product&CategoryId=$3&product_id=$1 [L,QSA]

原网址:

http://example.com/search.php?layout=details&Keyword=mobile&view=product&CategoryId=1026&product_id=93477

重写后的网址:

http://example.com/93477.htm

更新 1:

[QSA] 现在已添加到上面的代码中,以便附加查询字符串以便使用 PHP $_GET 检索动态参数

http://httpd.apache.org/docs/current/rewrite/flags.html#flag_qsa

更新 2:

编辑 .htaccess 代码,使 Keyword 和 CategoryId 动态化

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM