Недавно я создал принудительную загрузку для сайта клиента, и все хорошо работает с обычными подозреваемыми, такими как .jpg, .png, .tif и даже .pdf.
Но когда я обслуживаюФайл Adobe Illustrator или eps, при загрузке он получает добавленное расширение.
Я уверен, что знаю, откуда возникла проблема, но не знаю, как ее обойти.В моем коде мой тег <cfcontent>
назначает type="application/postscript"
файлу .eps и .ai, потому что это типы MIME, основанные на списке в W3shcools: Типы MIME
IsЕсть какой-нибудь способ заставить тип MIME, скажем, type="application/ai"
в среде общего хостинга?Или есть ли способ для меня получить список сопоставлений типов MIME с тегом или чем-то еще, чтобы я мог увидеть, есть ли для меня более подходящий тип MIME?
Вот мой код принудительной загрузки:
<cfset FileDownload = #URL.file#>
<cfset exten = ListLast(FileDownload, ".")>
<cfswitch expression="#exten#">
<cfcase value="ai"><cfset content_type = "application/postscript"></cfcase>
<cfcase value="eps"><cfset content_type = "application/postscript"></cfcase>
<cfcase value="pdf"><cfset content_type = "application/pdf"></cfcase>
<cfcase value="jpg"><cfset content_type = "image/jpeg"></cfcase>
<cfcase value="png"><cfset content_type = "image/png"></cfcase>
<cfcase value="tif"><cfset content_type = "image/tiff"></cfcase>
<cfdefaultcase><cfset content_type = "image/jpeg"></cfdefaultcase>
</cfswitch>
<cfheader name="content-disposition" value="attachment;filename=#FileDownload#">
<cfcontent type="#content_type#" file="#ExpandPath("./#folder#")#/#FileDownload#" deletefile="no">