您好我有以下结构http://localhost/index.php?a=$var1&b=var2&c=$var3
当有人去http://localhost/$var1/$var2/$var3
时,我想将其改为
他们被发送到http://localhost/index.php?a=$var1&b=var2&c=$var3
答案 0 :(得分:1)
将其添加到文档根目录中的htaccess文件的适当位置。
RewriteEngine On
RewriteCond %{THE_REQUEST} \ /+index\.php\?a=([^&]+)&b=([^&]+)&c=([^&\ ]+)
RewriteRule ^ /%1/%2/%3? [L,R]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]+)/([^/]+)/([^/]+)$ /index.php?a=$1&b=$2&c=$3 [L,QSA]
请注意,当浏览器加载/aaa/bbb/ccc
网址而不是/index.php
时,您正在更改相对URI基础。因此,您的链接必须是绝对网址,或者您需要在网页标题中添加基本标记:
<base href="/" />