首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用户id使用htaccess自动更改为用户名?

用户id使用htaccess自动更改为用户名?
EN

Stack Overflow用户
提问于 2015-01-10 10:02:13
回答 1查看 730关注 0票数 0

嗨,im使用htaccess将profile.php?u=<username>更改为我的网站/用户名,当我在链接中使用它时,它工作得很好,但当有人编写profile.php?id=<uid>时,它会自动改变。

例如,在facebook中,当您编写"www.facebook.com/profile.php?id=4“时,它将改为"www.facebook.com/zuck”。

我的htaccess代码

RewriteEngine On RewriteRule ^([a-zA-Z0-9_-]+)$ profile.php?u=$1 RewriteRule ^([a-zA-Z0-9_-]+)/$ profile.php?u=$1

我还能补充什么呢?请帮帮忙。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-01-10 10:20:40

没有,因为您肯定没有Apache可用的列表,其中包含用户ID到它们各自用户名的映射。Facebook使用他们的PHP应用程序执行重定向,方法是查询他们的数据库以获得ID,并将您重定向到包含用户名称的相应新URL,该URL是从他们的数据库中检索的。这样的PHP脚本可能如下所示:

代码语言:javascript
复制
<?php

$options = array("options" => array("min_range" => 1));
if (($id = filter_input(INPUT_GET, "id", FILTER_VALIDATE_INT, $options)) {
    $user = new User($id);
    header("Location http://example.com/{$user->name}", true, 303);
    exit();
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27874945

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档