解决Httpd静态资源服务器资源乱码问题

910 阅读1分钟

前文书:搭建本地Yum源用到了静态资源服务器技术

服务是起起来了,资源也能够访问到了,但存在不友好问题有3:

  • 带有中文的文件名或路径乱码
  • 浏览器支持格式会直接打开
  • 较长的文件名显示不全

资源列表如下 file 在Google Chrome上的访问页面如下 file 经过一段时间的搜索和尝试逐步的解决了前面的问题:

  1. 乱码问题:

编辑httpd配置文件httpd.conf,增加(或修改)页面的默认编码类型为UTF-8

vi /etc/httpd/conf/httpd.conf

......
IndexOptions Charset=UTF-8
......```

保存,重启服务,中文乱码的问题就解决了

file

2.文件名较长显示不全的问题:

编辑httpd配置文件autoindex.conf(line:15),增加(或修改)索引名长度限制为*****(级任意长度,不作限制)

vi /etc/httpd/conf.d/autoindex.conf

......
#
# IndexOptions: Controls the appearance of server-generated directory
# listings.
IndexOptions FancyIndexing HTMLTable VersionSort NameWidth=*
......```

保存,重启服务,名字显示不全的问题就解决了

file

3.点链接直接在浏览器中打开的问题

file 编辑本地配置文件**/etc/mime.types**(line:157),将预期直接下载的文件扩展名配置上 vi /etc/mime.types

......
application/octet-stream                bin lha lzh exe class so dll img iso ppt pptx doc docx xls xlsx pdf
......```

保存,重启服务,指定文件格式点击链接即前往下载的问题就解决了 file (注意:有些格式的文件在配置文件中有单独的注解,比如pdf,如果想支持这类文件的直接下载,可尝试注掉对应扩展名的配置,仅保留application/octet-stream的约定,再次测试时,建议清理浏览器缓存)

The End