使用 Apache 重写规则将信息从 URL 传递到文件名



我一直在撞这个,不幸的是失败了。 我希望有人能帮助我。

我想将信息从 URL 传递到文件名。 基本上我想做以下几点:

服务器上只有一个真实文件:http://www.domain.com/download/file.zip

如果用户在其浏览器中输入以下 URL:http://www.domain.com/download/file_xyx.zip 我想要 apache 内部服务文件.zip但用户下载文件file_xyz.zip

xyz 旨在成为变量(任何长度(,因此重写规则应该简单地接受它放置的任何内容,并始终在内部链接到同一文件。

我认为这可以通过重写规则来实现,我错了吗?

是的,你只需要这个规则:

RewriteEngine On
RewriteRule ^/?download/file_[0-9]+.zip /download/file.zip [L]

如果您使用的是 htaccess 文件,则可以将此规则放在"下载"文件夹中的 htaccess 文件中:

RewriteEngine On
RewriteBase /download/
RewriteRule ^file_[0-9]+.zip file.zip [L]

最新更新