如何使用 Apache 确保文件优先于目录?

如何使用 Apache 确保文件优先于目录?

我的 httpd.conf 使用 MultiViews 选项来为以下 URL 提供 HTML 文件:http://服务器/博客。这可以正常工作,除非存在同名的目录 - Apache 将尝试为该目录提供服务。

有什么方法可以确保 blog.html 优先于 blog/,或者更确切地说:尽管存在匹配的实体(目录),我是否可以根据 MultiView 进行 Apache 进程内容协商?

在 nginx 中,我可以明确地执行以下操作:

try_files $uri $uri.html $uri/ =404;

答案1

我退而求其次使用 mod_rewrite。以下规则仅重写不带点(“.”)的 URL,因此 /images/image.jpeg 保持不变:

RewriteRule ^/([^\.]+)$ /$1.html [L]

相关内容