我想将用户名作为 url 的一部分,url 应该是这样的
domanin.com/username/profile.html
domanin.com/username/events.html
domanin.com/username/messages.html
你能指导我怎么做吗?
如果我在网站上注册为 ali,那么 ali 应该是我的网址的一部分,例如
domain.com/ali/profile.html
domain.com/ali/events.html
这就是我在用户可以注册的网站上执行此操作的方式,它在 php 中,但可以修改以获得您想要的。
RewriteEngine On
# Full path
RewriteBase /
# Rewrite all php files
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*)$ $1.php
# Rewrite the user profile pages
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^user/([a-zA-Z0-9_-]+)$ profile.php?user=$1
RewriteRule ^user/([a-zA-Z0-9_-]+)/$ profile.php?user=$1
第一个 RewriteBase 是您站点的根目录。“# Rewrite all php files”下的第二个 Rewrite 设置将从文件中删除所有 .php 文件扩展名。
第三个重写集是您感兴趣的。 Profile.php 是用户配置文件,而 ?user=$1 是注册用户名。当 URL www.domain.com/user/userName/ 被调用时,它实际上会从页面 profile.php?user=userName 获取数据。
您将不得不稍微修改一下以按照您的意愿工作,看看我在 php 中的情况,但谷歌上都有关于如何做到这一点的教程。