我遇到了两个类似的友好网址的问题。我在 htaccess 中提到了以下几行。
RewriteRule ^user/([a-zA-Z0-9-]+) /sitename/profile.php?id_profile=$1 [QSA,L]
RewriteRule ^user/([a-zA-Z0-9-]+)/articles /sitename/articles.php?id_profile=$1 [QSA,N]
当我尝试访问第二个 url 时,它会重定向回第一个 url。我想第一部分"用户"导致了这个问题。
这里id_profile是一个字符串。在 php 文件中,我获取id_profile对应的用户 id(整数)并执行其余操作。
这是一个类似的工作示例。https://www.etsy.com/people/vinubhaihttps://www.etsy.com/people/vinubhai/favorites
我想让它像 etsy 一样工作。请帮忙。
感谢和问候,维恩什库马尔·昆希拉曼
您可以添加$
来锚定字符串的末尾,也可以切换顺序
RewriteRule ^user/([a-zA-Z0-9-]+)$
这与文章网址不匹配
切换顺序会导致文章首先匹配,而配置文件 URL 将不匹配文章重写规则
第一个规则首先被处理。 改变你的规则的顺序,你的问题应该得到解决。
首先重写文章,然后用户常规重写。