Я переношу сайт с CF10 в Linux на CF2016 в Windows и столкнулся с проблемой с вложенными файлами в cfmail.
Я прилагаю файл в cfmail с;
<cfmailparam file="#FileName#">
а также пробовали варианты с расположением и без него, например:
<cfmailparam file="#FileName#" disposition="attachment;
filename=""#FileName#"""
type="#ContentType#/#ContentSubType#">
Но несмотря ни на что, в CF2016 в Windows имена моих вложений в Outlook отображаются как ATT00160.dat
(без набора типов) или ATT00169.xlsx
(с набором типов)
Кажется, что проблема связана с именами файлов определенной длины. Имя файла из 64 символов разобьет его, а меньшее имя файла, скажем, из 49 символов — нет.
Просматривая источник сообщения в Outlook, из cfmail, отправленного из Windows, я вижу значение ниже. Заметили, что под content-type
имя было разделено?
Content-Type: application/octet-stream;
name*0=BLAH_BLAH1_Ownership_Database_Issue_2018-01_In_Development2.;
name*1=xlsx
Content-Transfer-Encoding: base64
Content-Disposition: attachment;
filename*0=BLAH_BLAH1_Ownership_Database_Is;
filename*1=sue_2018-01_In_Development2.xlsx
То же вложение, отправленное с cfmail из Linux, дает мне:
Content-Type: application/octet-stream;
name=BLAH_BLAH1_Ownership_Database_Issue_2018-01_In_Development2.xlsx
Content-Transfer-Encoding: base64
Content-Disposition: attachment;
filename*0=BLAH_BLAH1_Ownership_Database_Is;
filename*1=sue_2018-01_In_Development2.xlsx
Обратите внимание, что имя content-type
не было разделено.
У кого-нибудь есть идеи, как решить эту проблему?
decode
как атрибутfalse
илиfilename
(представлено в 2016 году)? - person Beginner   schedule 05.06.2018