繁体   English   中英

如何基于帐户的用户名添加URL

[英]How to add a URL based on the username of the account

我应该如何根据用户名创建一个URL?
有人可以帮助我提供代码和.htaccess配置吗?

users.com/username此处

如果要在Github上查看
如果要在实时网站上查看

信息
如果我的用户想要查看其页面,则将转到“ users.com/hisusername ”。 该链接将获取他的用户名并显示有关他的帐户的信息, .htaccess将具有重写规则(我猜是吗?)。 有人可以帮助我提供代码吗?

建议
我已经在一些教程中看到了这一点,但我无法对其进行跟踪,因此,如果页面上带有“ ?username=usernamehere ”标签,则将在“ ?username=usernamehere usernamehere ”页面上重定向usernamehere
示例:用户位于“ users.com/profile.php?username=Stackoverflow ”上,并且该用户将被重定向到:“ users.com/users/Stackoverflow ”。 这有可能发生吗? 谢谢,祝你有美好的一天:)

该用户位于users.com/profile.php?username=Stackoverflow并将该用户重定向到: users.com/users/Stackoverflow 这有可能发生吗?

注意:尽管此引用的含义相反,但以下答案假定您希望用户在URL栏中输入users.com/users/Stackoverflow

将一个名为.htaccess的文件放在您网站的文档根目录中(包含您的网站文件的最高目录,通常称为public_htmlwww )。添加以下规则

RewriteEngine on
RewriteBase /

RedirectRule ^users/(.*)  /profile.php?username=$1  [END,NC]

NC标志使比较不区分大小写。 这意味着users/StackUSERS/Stack都将被重定向。 如果要区分大小写的比较,请将其删除

END标志告诉服务器停止寻找更多的重定向规则。 基本上,它确保/profile.php?username=...是该请求的最终目的地。

附录

如果您确实想以相反的方向重定向客户,请改用此规则

RedirectRule ^profile.php?.*username=([^&$]+)  /users/$1  [END,NC]

如果路径/users/name不是真实文件,则可能会导致问题

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM