PHP - Abertura de arquivos DOCX enviados com o tipo MIME correto
Pergunta
Eu tenho usuários que carregam arquivos docx que disponibilizo para download. Os problemas que estamos enfrentando são os tipos desconhecidos de MIME de arquivos DOCX que fazem com que o IE abra esses documentos como arquivos zip.
Ele está sendo executado em um servidor Windows/IIS.
Como este é um host compartilhado, não posso alterar as configurações do servidor.
Eu estava pensando que poderia apenas escrever algum código que lidaria com os arquivos DOCX, talvez saídas personalizadas:
if (extension=docx) {
header("Content-Disposition: attachment; etc)
header('Content-Type: application/application/vnd.openxmlformats-officedocument.wordprocessingml.document');
//Output the file contents etc
}
Esta seria uma solução viável ?? Se sim, alguém pode ajudar a preencher as lacunas?
(PS eu sei que a sintaxe acima não está correta, apenas um exemplo rápido)
Solução
Isso deve servir:
header('Content-type: application/vnd.openxmlformats-officedocument.wordprocessingml.document');
header('Content-Disposition: attachment; filename="myfile.docx"');
readfile('myfile.docx');
Outras dicas
Sim, isso vai funcionar bem. Os documentos PHP têm basicamente o código exato você quer.