2010-02-02 6 views
10

Je suis en train de diffuser des fichiers depuis Amazon S3 maintenant, et je génère une URL sécurisée à l'aide de l'API. Fonctionne très bien partout sauf pour les personnes qui téléchargent des fichiers .exe dans IE. J'ai testé cela sur IE 8 et 7.Internet Explorer supprime l'extension .exe du téléchargement lorsqu'elle est suivie par les paramètres d'URL

Si vous exécutez un serveur Web local, vous pouvez tester en mettant notepad.exe dans votre racine Web. Passez à http://localhost/notepad.exe (ou équivalent) Maintenant, essayez http://localhost/notepad.exe?

Il doit enregistrer le fichier en tant que bloc-notes, sans extension. Est-ce une «caractéristique» parce que googling il ne vient avec rien. Merci à l'ensemble du problème des extensions IE, vous ne pouvez pas rechercher quoi que ce soit sur les extensions de fichiers.

De plus, si le fichier comporte plusieurs points dans le nom, un [1] ou [] ajouté à la fin est parfois ajouté.

Des idées? Docs sur ce comportement terrible? Il semble que ce soit une fonctionnalité de sécurité, mais je n'ai pas encore trouvé d'option pour le désactiver.

Et comme toujours, merci. Tim

Répondre

6

Il y a une longue histoire, mais la solution de contournement simple est de le faire:

http://www.example.com/dl/test.exe?mysecret=12321412&FixForIE=.exe

En ce qui concerne la fuite [1] ou tout le reste, non, il n'y a pas vraiment tout ce que vous pouvez faire que si l'utilisateur arrive à avoir téléchargé de cette URL avant.

+5

Quoi !? Au nom de Trident, je demande la longue histoire! – aaaidan

12

Nous avons rencontré le même problème lors du traitement de fichiers à partir de S3. Il s'avère que vous devez définir correctement la disposition du contenu pour que IE gère correctement les fichiers. A savoir, l'en-tête HTTP

Content-Disposition: attachement; filename = "text.exe"

Cet article décrit un peu plus en détail: http://www.jtricks.com/bits/content_disposition.html