侧边栏壁纸
博主头像
枕头下放双臭袜子博主等级

今我何功德,曾不事农桑

  • 累计撰写 166 篇文章
  • 累计创建 32 个标签
  • 累计收到 0 条评论
web

设置apachehttpd服务自动下载无后缀文件

枕头下放双臭袜子
2022-08-31 / 0 评论 / 0 点赞 / 36 阅读 / 488 字 / 正在检测是否收录...

0、导

我司同事在配置最新的IOS app 微信授权登录时 SDK时,碰到一个问题。服务器端需要配置IOS唤起微信APP授权的通用链接地址。

他是希望我将ios的配置文件放入某台服务器web服务目录下的apple-app-site-association文件。他说,这个文件文件必须没有后缀且浏览器端访问时会自动下载。

我知道阿里oss有配置可以设置文件是直接打开或是下载,该功能是通过将文件的HTTP头中设置Content-Type或者Content-Disposition字段来实现的。

而httpd中,加上响应头 application/octet-stream 它能帮我们实现文件的访问下载功能 给mime类型文件设置该响应头,就能实现文件的下载,那么如何配置没有后缀名的文件实现访问下载呢?

1、修改httpd.conf配置文件

要实现无后缀文件web访问直接下载,需要在配置文件httpd.conf中添加一段配置,首先找到配置文件中形如以下的mime_module设置:
httpd.conf配置文件路径在/usr/local/apache2/conf/httpd.conf

<IfModule mime_module>
.....
</IfModule>

为了防止我们自定义的配置被覆盖,在上面类似的代码片段后加入以下配置:

<IfModule mime_module>
.....
</IfModule>
### 以下三行是需要添加的配置
<FilesMatch "^[^.]+$">
    ForceType application/octet-stream
</FilesMatch>

配置文件修改之后,重启httpd即可实现无后缀文件web访问直接下载

如果想要实现其他文件web访问也直接下载,可以打开/usr/local/apache2/conf/mime.types文件,将需要下载的文件后缀加入其内,并重启httpd

application/octet-stream	bin dms lrf mar so dist distz pkg bpk dump elc deploy
0

评论