正则表达式帮助。 Lighttpd重写规则

发布于 2024-09-15 06:36:45 字数 468 浏览 19 评论 0原文

我对正则表达式不太熟悉,但要求我修改lighttpd重写规则。

url.rewrite = (
    "^/(.+)/?$" => "/index.php/$1"
)

我想从上面的贪婪模式中排除一条路径,这样它就不会回退到index.php

换句话说,很简单:匹配“统计”以外的任何内容。但我就是无法在正则表达式中得到正确的结果。

例如:

  • http://www.foo.com/anything/index.php/anything
  • http://www.foo.com/statistics/statistics/index.php

您能给我一个实现这一目标的提示吗?

谢谢你!

I am not very familiar with Regular expression, but I am asked to modify a lighttpd rewrite rule.

url.rewrite = (
    "^/(.+)/?$" => "/index.php/$1"
)

I want to exclude a path from the above greedy pattern, so that it won't fall back to index.php.

In words, it is simple: Match anything other than "statistics". But I just couldn't get it right in regex.

For example:

  • http://www.foo.com/anything/index.php/anything
  • http://www.foo.com/statistics/statistics/index.php

Would you please show me a hint to achieve that?

Thank you!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

尴尬癌患者 2024-09-22 06:36:45

您可能想使用负前瞻。然后

"^/(?!statistics)(.+)/?$" => "/index.php/$1"

你需要一个额外的统计规则

You probably want to use a negative lookahead. Something like

"^/(?!statistics)(.+)/?$" => "/index.php/$1"

And then you'll need an additional rule for statistics

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文