-1

我正在学习 htaccess 并且遇到过这些问题,我不确定他们在做什么。

有人可以帮我解释一下这些条件的作用吗

RewriteCond %{REQUEST_URI} (/|\.php|\.html|\.htm|\.feed|\.pdf|\.raw|/[^.]*)$  [NC]

RewriteCond %{REQUEST_URI} !^/index.php
4

1 回答 1

0

这两个条件都尝试将正则表达式与请求 URI 进行匹配。因此,您需要查看 2 个正则表达式模式匹配的内容。

(/|\.php|\.html|\.htm|\.feed|\.pdf|\.raw|/[^.]*)$

这可以是任何以 a/或以下扩展名结尾的内容:php, html, htm, feed, pdf, 或raw. 或者,它可以以没有扩展名的任何内容结尾。表示字符串的$“结束”。

第二个是 URI 不以 . 开头/index.php

!^/index.php

^是字符串的“开头”,表示!它不匹配。所以这只是URI不匹配^/index.php

于 2013-10-14T04:34:39.470 回答