我在我们的xxx.yyy.edu网站上的根目录中有以下.htaccess文件。在htaccess文件中正则表达式与根目录不匹配
<FilesMatch "(.+)\.php">
AuthType shibboleth
ShibRequestSetting requireSession 1
ShibUseHeaders On
Require valid-user
ShibRequestSetting redirectToSSL 443
</FilesMatch>
这应该只匹配以.php结尾的文件,并匹配所有以.php结尾的文件,然后强制认证。这部分似乎工作正常。
但是,它也匹配根网址http://xxx.yyy.edu和http://xxx.yyy.edu/。这不是一件好事,因为它迫使网站的根目录得到认证。
它不符合xxx.yyy.edu/index.htm或任何在域名后有任何内容的任何网址,如xxx.yyy.edu/students.htm或者甚至xxx.yyy.edu/x
我在www.regexr.com上测试过它,并且它不匹配那里的根网址。
任何想法/建议表示赞赏。
谢谢anubhava;救了我后:-) – TerryE
我发现它是index.php,并已使用#DirectoryIndex index.htm作为解决方案。不过,我认为你的解决方案更好,并切换到它。 这也有助于我更好地理解“负面看法,所以双重感谢!:-) 我会标记你的答案,但我没有足够的声誉,对不起 – JimV
不客气,很高兴它的工作只要答案被接受就足够了。 – anubhava