网站高级会员的个人网址

时间:2013-12-23 10:46:59

标签: php url

我正在建立一个网站,让您可以查看成员(基本会员)个人资料,其中包含一个名为http://www.website.com/user.php?id=123456789的网址,这对我正在做的事情很好,但对于我想要的高级会员给他们一个更个性化的网址,比如说:

  

website.com/user.php?id=123456789 ==   website.com/username

有没有人知道这是怎么可能的,请记住它只适用于高级会员 - 基本会员仍然使用user.php?id = 123456789

1 个答案:

答案 0 :(得分:1)

有人低估了Prodikl的答案 - 但它确实从关键问题开始:你有什么资源/访问来改变它?至少你需要对你的webserver配置进行一些控制 - 我们需要知道提供具体建议的网络服务器。 PHP不控制URL到脚本的映射 - 该角色由Web服务器执行。使用一些 framewaorks可以在PHP代码中进行进一步的路由 - 但是Web服务器仍然需要将请求引导到正确的脚本开始。

如果没有任何此类访问权限来更改webserver配置,那么您只能选择为文档根目录中的每个用户名创建一个目录,并在每个用户名中添加一个index.php。

另一个问题是,必须是否具有website.com/${username}格式的网址 - 这是相当棘手的,只能通过将'路由器'作为404处理程序来实现。 OTOH如果website.com/somedir/${username}那么你有更多的选择 - 你可以使用mod_rewrite将website.com/somedir/${username}重写为website.com/user.php?id=${username}(你也可以创建一个列出一对一映射的数据库而不是一个公共脚本)。

关于如何使用mod_rewrite解决问题,这里有很多问题和答案。