我的htaccess文件中有这个规则强制链接文件下载而不是在浏览器中打开:
<FilesMatch "\.(gif|jpe?g|png)$">
ForceType application/octet-stream
Header set Content-Disposition attachment
</FilesMatch>
有没有办法改变RegExp
所以它只适用于某个目录中的文件?
由于
答案 0 :(得分:12)
您可能需要将指令放在特定目录中的.htaccess
文件中。
答案 1 :(得分:10)
像@gumbo说的那样,将.htaccess
文件放在您想要影响的最高级别文件夹中。这些设置将逐渐渗透到子文件夹。在headers
文件中使用此模块之前,您可能还需要确保已启用htaccess
模块。如果未启用headers模块,则以下行将生成错误:
Header set Content-Disposition attachment
这是一个强制下载mp3文件的示例,只有在启用了header模块时才会这样做:
<IfModule mod_headers.c>
<FilesMatch "\.(mp3|MP3)$">
ForceType audio/mpeg
Header set Content-Disposition "attachment"
Allow from all
</FilesMatch>
</IfModule>
注意:它不启用模块,如果未启用模块,它只会忽略IfModule标记内的任何内容。
要启用apache模块,您需要编辑httpd.conf文件,或者在wamp服务器中,您可以单击wamp tray图标并选择“Apache - &gt; Apache Modules - &gt; headers_module”或确保选中它
答案 2 :(得分:2)
将其放在<Location>
指令中,和/或修改正则表达式以排除斜杠或适当。