htaccess删除获取参数键而不是值

时间:2013-10-21 18:19:46

标签: apache .htaccess mod-rewrite

我正在尝试从我的网址中删除获取密钥

因此test?category=innate&index=0将成为test/innate/0

我一整天都在尝试无济于事。我发现资源很难学习apache。正确方向的任何都会非常感激。

2 个答案:

答案 0 :(得分:1)

此规则适用于您:

RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^test/([^/]+)/([^/]+)/?$ test?category=$1&index=$2 [L,QSA,NC]

参考:Apache mod_rewrite Introduction

答案 1 :(得分:1)

将这些规则添加到文档根目录

中的htaccess文件中
RewriteEngine On

# to externally redirect
RewriteCond %{THE_REQUEST} \ /test\?category=([^&]+)&index=([0-9]+)
RewriteRule ^test$ /test/%1/%2 [L,R=301]

# to internally rewrite back
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^test/([^/]+)/([0-9]+)$ /test?category=$1&index=$2 [L]