如果指定的字符串存在,则正则表达式不匹配
中包含术语“admin”,则
我正在尝试进行apache重写,如果request_uri mydomain.com/admin/anything_else
重写主机以使用子域
admin.mydomain.com/admin/anything_else。
同样,如果我在 admin.mydomain.com 中单击一个链接,并且它是一个没有“admin”的 url,那么我想将该 url 重写回
mydomain.com/anything_else
我的问题是。正则表达式可以做这样的存在检查吗?我知道它可以执行不匹配的术语(虽然我不知道语法......),但在这种情况下我希望正则表达式完全失败。有什么想法吗?
ReWriteCond [^(admin)]$
mydomain.com/admin/hi - 匹配 mydomain.com/anything - 不匹配
i'm trying to do an apache rewrite where if the term "admin" is contained in the request_uri
mydomain.com/admin/anything_else
re-write the host to use a subdomain
admin.mydomain.com/admin/anything_else.
likewise, if i click a link while in the admin.mydomain.com and it is a url WITHOUT "admin" in it, then i would like to rewrite the url back to
mydomain.com/anything_else
My question is. can regex do an exist check like that? I'm aware that it can do terms not matching (I don't know the syntax though...), but in this case I want regex to fail completely. Any ideas?
ReWriteCond [^(admin)]$
mydomain.com/admin/hi - matches
mydomain.com/anything - doesn't match
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
尝试这些规则:
Try these rules:
您可以尝试使用否定前瞻,例如 mydomain.com/(?!admin)
You may try using negative lookaheads, like mydomain.com/(?!admin)
我最终做了类似的事情......
I ended up doing something similar...