簡體   English   中英

使用htaccess將用戶ID自動更改為用戶名?

[英]user id change automatically to username using htaccess?

您好,即時通訊使用htaccess將profile.php?u=<username>更改為mywebsite / 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

我可以添加些什么? 請幫忙 。

沒什么,因為您肯定沒有一個可用於Apache的列表,該列表包含用戶ID到其各自用戶名的映射。 Facebook通過查詢其數據庫的ID並將您重定向到包含從其數據庫中檢索到的用戶名的相應新URL,來使用其PHP應用程序執行重定向。 這樣的PHP腳本可能類似於:

<?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();
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM