首页 > 解决方案 > 仅在顶层目录中使用 mode_rewrite 剥离 .html

问题描述

我将我网站的所有 .hmtl 页面移动到它们自己的子目录中,并且我想将所有请求路由到它们在顶级目录中的旧位置 *.html 到具有相同标题的目录,以便收集旧链接。例如http://pizzomarinellafs.inarrivo.net/repubblica.html应该变成http://pizzomarinellafs.inarrivo.net/repubblica/。同时,我还有另一个功能规则,将所有 /blog_files/ 请求更改为 /blog/files/,同时保持目录中的 .html 文件毫发无损。因此,我无法从整个网站中删除 .html,否则我还会捕获博客目录中的文件:这是我目前无法正常工作的httpd.conf 配置:

<VirtualHost *:80>
    ServerAdmin info@inarrivo.net
    DocumentRoot /var/www/html/pizzoMarinellaFS.inarrivo.net
    ServerName pizzomarinellafs.inarrivo.net
    RewriteEngine  on
    RewriteRule "/blog_files/(.*)"  "/blog/files/$1"  [R]
    RewriteCond %{REQUEST_URI} ^/$
    RewriteRule ^(.*)$.html $1 [R]
    #RewriteRule ^/*[^/]+.html "$1" [R]
    RewriteRule "/repubblica.php" "repubblica" [R]
    ErrorLog  /var/log/httpd/inarrivo_log
</VirtualHost>

应该如何更改规则以获得正确的 .html 结果?

标签: apachemod-rewritecentos7

解决方案


推荐阅读