通过htaccess将下载文件重定向到新的命名文件

时间:2015-05-21 02:48:17

标签: php apache .htaccess mod-rewrite redirect

随着时间的推移,我们软件的文件名因各种原因而发生了变化,因此共享软件网站指向的旧下载文件已不再存在。

我想重定向,以便如果有人点击旧文件的链接,他们可以下载新的(不同的命名)版本。

所以我尝试将.htaccess文件添加到包含以下内容的public_html中(没有其他内容):

Redirect 301 mydomain.com/oldinstaller.exe mydomain.com/newinstaller.exe

但是没有用,我得到了服务器发出的500个错误。所有文件都在public_html中,因此是.htaccess文件。我有什么想法我做错了吗?

更新

我尝试了以下内容:

Options +FollowSymLinks
RewriteEngine On
RewriteRule ^oldinstaller.msi /newinstaller.exe [R=301,L]

并且浏览器被赋予此URL:

https://example.com/home/admin/web/example.com/public_html/newinstaller.exe

如果我尝试:

RewriteRule ^oldinstaller.msi$ example.com/newinstaller.exe [R=301,L]

我明白了:

https://example.com/example.com/newinstaller.exe

2 个答案:

答案 0 :(得分:0)

尝试使用

重定向mod_rewrite
RewriteRule ^oldinstaller.exe /newinstaller.exe [R=301,L]

或通过在php页面中添加HTTP标头重定向

答案 1 :(得分:0)

这应该成为一个技巧:

文件名:.htaccess

Options +FollowSymLinks
RewriteEngine On
RewriteRule ^oldinstaller.exe$ mydomain.com/newinstaller.exe [R=301,L]