所以我的网站上已经有一个用于普通用户配置文件的个性化 URL...
basecentre.co.uk/user1
这会将用户重定向到
basecentre.co.uk/userprofile.php?username=user1
使用下面的代码...
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{QUERY_STRING} ^thankyou-page=([0-9]*)$
RewriteRule ^(.*)$ affilates_redirect.php [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /userprofile.php?username=$1
RewriteCond %{HTTP_HOST} ^www.basecentre.co.uk$ [NC]
RewriteRule ^(.*)$ http://basecentre.co.uk/$1 [R=301,L]
</IfModule>
我也在尝试创建业务资料,并且希望做同样的事情,但在我的网站上使用不同的页面,所以说...
basecentre.co.uk/businessprofile.php?businessname=mcdonalds
会变成
basecentre.co.uk/mcdonalds
而且它不会与普通用户配置文件混淆。 这行得通吗?或者您的网站上只能有一个个性化 URL 吗?如果那是真的,我还有其他选择吗?
此外,如果可能的话,如果您的用户名与企业资料名称相同,会发生什么情况?
感谢您的帮助!
最佳答案
我建议使用像/user/user1 和/business/macdonalds 这样的 URL 方案。这将排除任何碰撞。
您还可以保留用户配置文件 URL,例如/user1,并添加/business/macdonalds 作为业务配置文件的新方案。
最后,做自己喜欢的事情不是不可以,而是比较难,因为有几个限制条件:
- 您必须确保用户名永远不会与公司名称相同。
- 您不能重定向到 userprofile.php 或 businessprofile.php,但您必须重定向到执行路由的脚本(例如 index.php)。
- 您必须开发一个路由器,它将查找用户和业务表以找出必须显示哪种类型的配置文件,最后执行正确的 .php 文件。
关于php - 我如何使用多个虚 URL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25099213/