Apache“url translation”

时间:2017-08-17 18:43:02

标签: apache .htaccess ubuntu mod-rewrite

我在ubuntu 16中运行了一个apache 2.4。它提供了一些gz压缩的html文件,它可以动态压缩它们。这是我的.htaccess:

AddEncoding gzip .gz

RewriteEngine on
RewriteCond %{HTTP:Accept-encoding} gzip
RewriteCond %{HTTP_USER_AGENT} !Konqueror
RewriteCond %{REQUEST_FILENAME}.gz -f
RewriteRule ^(.*)\.css$ $1.css.gz [QSA,L]
RewriteRule ^(.*)\.js$ $1.js.gz [QSA,L]
RewriteRule ^(.*)\.html$ $1.html.gz [QSA,L]

<Files *.gz>
ForceType text/html
</Files>

我现在想要实现的目标如下:

假设用户通过浏览器点击以下内容:

http://myapache/myrootdir/file1

我希望他被重定向,但没有看到它(浏览器中的url必须保持原样)到上面提到的压缩gz文件之一(服务器中不存在file1)。

例如http://myapache/myrootdir/file1.html.gz

这有点可能吗?我用mod_rewrite尝试了几种方法但没有成功。任何想法或想法都非常受欢迎。

1 个答案:

答案 0 :(得分:0)

我最终做的是在我的.htacess文件中进行了以下修改。

Options -Indexes
Options +FollowSymLinks
RewriteEngine On
RewriteRule file1.html file1.html.gz [QSA,L]

我仍然需要添加.html扩展名,但这是可以接受的。