如何使用htaccess为空间创建RewriteRule

时间:2019-07-16 20:17:32

标签: php .htaccess url url-rewriting web-deployment

我使用htaccess使mu URL干净。我原来的ULR是 http://localhost/bookStore/single_book.php?name=This%20is%20book%20no%204

我使用php urlencode()函数做到这一点

http://localhost/bookStore/single_book.php?name=This+is+book+no+4

但是现在我要使它像这样:

http://localhost/bookStore/single_book/This+is+book+no+4

使用htaccess

RewriteRule ^single_book/([0-9a-zA-Z_-]+) single_book.php?name=$2 [NC,L]

RewriteRule不起作用

1 个答案:

答案 0 :(得分:0)

RewriteCond %{QUERY_STRING} ^name=(.+)
RewriteRule ^(bookStore/single_book)(\.php)$ $1/%1?

如果查询字符串中包含name,并且查询字符串中仅有name,则此匹配。

我在https://htaccess.madewithlove.be/上进行了测试

为了玩正则表达式,我使用了https://regexr.com/

RewriteRule中的结尾?会删除查询字符串。