首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Htaccess负面Lookahead问题

Htaccess负面Lookahead问题
EN

Stack Overflow用户
提问于 2017-05-21 01:43:32
回答 1查看 120关注 0票数 0

这对我的爱好网站来说是一个非常具体的问题。

我的htaccess中有以下代码:

代码语言:javascript
复制
RewriteRule ^(?!assets|404|i|chats|books|forum|blog|help|terms|policy|jobs|settings|reset|signup|signin|signout)([^/]+)$ profile_home.php?userdomain=$1 [L]
RewriteRule ^(?!assets|404|i|chats|books|forum|blog|help|terms|policy|jobs|settings|reset|signup|signin|signout)([^/]+)/([^/]+)$ profile_home.php?userdomain=$1&selection=$2 [L]

现在这对于大多数人来说都是完美的,我可以访问所有这些链接(url/404,url/i,等等),也可以访问(url/user1,url/user2)……

这个问题来自于到目前为止特定的一个用户,似乎抛出了一个随机的404。该用户确实存在,移除前视可以解决问题,并且可以查看该用户,但这些其他链接当然会断开。

我将直接为这个问题提供一些链接示例:

/blog

/forum

/testingaccount

以上所有功能都可以正常工作,但是这个非常特定的用户不能工作。我甚至无法理解它是如何做到这一点的。用户存在,文件等都存在,但是这个用户造成了问题。

/itsame或/forumerguy

EN

回答 1

Stack Overflow用户

发布于 2017-05-21 02:47:42

在您的情况下,以您的排除项开头的url将不起作用: /i.../blog...

您可以这样做:

代码语言:javascript
复制
RewriteRule ^(assets|404|i|chats|books|forum|blog|help|terms|policy|jobs|settings|reset|signup|signin|signout)(/|$) - [L]

RewriteRule ^([^/]+)$ profile_home.php?userdomain=$1 [L]
RewriteRule ^([^/]+)/([^/]+)$ profile_home.php?userdomain=$1&selection=$2 [L]

或者,如果您在(assets|404|i|cha...)之后需要其他规则,您可以这样做:

代码语言:javascript
复制
RewriteCond %{REQUEST_URI}  !^/(assets|404|i|chats|books|forum|blog|help|terms|policy|jobs|settings|reset|signup|signin|signout)(/|$)
RewriteRule ^([^/]+)$ profile_home.php?userdomain=$1 [L]
RewriteCond %{REQUEST_URI}  !^/(assets|404|i|chats|books|forum|blog|help|terms|policy|jobs|settings|reset|signup|signin|signout)(/|$)
RewriteRule ^([^/]+)/([^/]+)$ profile_home.php?userdomain=$1&selection=$2 [L]
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44089043

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档