.htaccess 用 get 参数重写 url [英] .htaccess rewrite url with get parameter

查看:30
本文介绍了.htaccess 用 get 参数重写 url的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

这是我第一次尝试 .htaccess

this is my first time to try .htaccess

这就是我想要的.

example.com/account/blitzen12 -> example.com/account/index.php?id=10&name=blitzen12

我不想在重写时包含 id,这可能吗?

i don't want to include the id in rewriting, is it possible?

Note: id and name which is 10 and blitzen12 is retrive from the database.

到目前为止,这是我尝试过的,但没有奏效.

so far this is what I've tried but it didn't work.

Options +FollowSymLinks  
RewriteEngine On 

RewriteRule ^account/(.*)$ ./account/index.php?page=account&id=$1&name=$2 [L,NC]

html 代码.

<a href="account/index.php?id=10&name=blitzen12">blitzen12</a>

谁能帮我解决这个问题?谢谢.

can anyone help me with this? Thank you.

推荐答案

10"或 id,不是 URL 的一部分:

The "10" or the id, isn't part of the URL:

example.com/account/blitzen12

所以你不能把它改写成另一个URL,不能凭空拉出来.您要么只需要提供没有id"的页面(并使用name"将其从数据库中拉出),要么将其嵌入到没有查询字符串的 URL 中,例如:

So you can't rewrite it into another URL, can't pull it out of thin air. You'll either need to just serve the page without an "id" (and pull it out of the database using the "name") or embed it in the URL without the query string, something like:

example.com/account/10/blitzen12

然后你就可以使用:

Options +FollowSymLinks  
RewriteEngine On 

RewriteRule ^account/([0-9]+)/(.*)$ ./account/index.php?page=account&id=$1&name=$2 [L,NC]

这篇关于.htaccess 用 get 参数重写 url的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆