[英]URL rewrite in sub folder using .htaccess
我正在尝试在我的PHP应用程序中实现URL重写。 有人可以分享在.htaccess中实施URL重写的分步过程。
在我的应用程序中,我想实现以下URL
www.domain.com/shop/shop.php?shopname=myshop&sh=1
至
www.domain.com/shop/myshop
我使用了以下内容
RewriteEngine On
RewriteBase /shop/
RewriteCond %{THE_REQUEST} /shop\.php\?shopname=([^\s&]+)&sh=([^\s&]+) [NC]
RewriteRule ^ %1? [R=301,L,NE]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]+)/?$ shop.php?shopname=$1&sh=$2 [L,QSA,NC]*
它显示了像www.domain.com/shop/myshop这样的网址
但没有指向www.domain.com/shop/shop.php?shopname=myshop&sh=1
如果我理解正确,你可以做你想做的事:
RewriteCond %{QUERY_STRING} ^id=([^&]*)&name=(.*)$
RewriteRule ^/shop/shop.php$ /shop/$2?id=$1
RewriteCond检查正确格式的查询字符串并提取值。 $ 1 = ID,$ 2 =名称。
RewriteRule将正确格式的URL重写为新格式,从RewriteCond插入name和id参数。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.