使用.htaccess重写变量


Rewrite variables using .htaccess

我想重写我的变量

../detail.php?id=910&type=car
../book.php?id=910&type=car

../detail/car/910
../book/car/910

但是我不知道如何编码,请给我代码和解释。由于

打开.htaccess文件,确保你的RewriteEngine on文件,然后写如下"RewriteRule"对于您的url:

RewriteRule ^detail/(.*)/(.*)$ detail.php?type=$1&id=$2 [NC,L]
RewriteRule ^book/(.*)/(.*)$ book.php?type=$1&id=$2 [NC,L]

如果你的重写规则不工作,那么在你的重写规则

之前添加以下行
Options +FollowSymLinks  
RewriteEngine On

上述规则说明:

RewriteRule -告诉Apache这个like指向单个RewriteRule

^detail/(.*)/(.*)$ or ^book/(.*)/(.*)$ - 模式。服务器将检查对站点的每个请求的URL,以查看此模式是否匹配。如果是,那么Apache将把请求的URL替换为后面的替换部分。

detail.php?type=$1&id=$2 or book.php?type=$1&id=$2——替换。如果上面的模式与请求匹配,Apache使用这个URL而不是请求的URL。

[NC,L] - 标志,告诉Apache如何应用规则。在本例中,我们使用了两个标志。NC,告诉Apache这个规则应该是不区分大小写的,L告诉Apache如果使用了这个规则,就不要再处理任何规则。