Perché Firefox non può eseguire file .swf locali?


68

Il mio obiettivo è provare a eseguire i file .swf tramite Firefox e NON un lettore autonomo.

Quando si tenta di eseguire file .swf locali su Firefox 29.0 (attualmente su 14.04), il browser apre la finestra del prompt Apri con / Salva file anche se nel browser è installato il plug-in Flash. Fare clic con il tasto destro del mouse sul file e fare clic su Apri con ...> Firefox consente al browser di aprire una nuova scheda e quindi di aprire nuovamente Con / Salva file. Selezionando Firefox attraverso quella finestra del prompt, Firefox continuerà ad aprire nuovamente il prompt in una nuova scheda.

Quando accedono ai file .swf online, tuttavia, funzionano normalmente e Firefox mostra anche l'indicatore del plug-in Lego nella barra degli indirizzi dicendo che "Adobe Flash" è abilitato per l'indirizzo da cui accedo al .swf.

Nella scheda Applicazioni delle preferenze di Firefox, i file SWF sono attualmente impostati su "Usa Shockwave Flash (in Firefox)", quindi non capisco perché non farà ciò che dice nel caso dei file locali.

AGGIORNAMENTO: Apparentemente, Firefox ha voci separate "Shockwave Flash File" nella scheda Applicazioni delle sue Preferenze per diversi tipi MIME. Ho trovato una soluzione alternativa che ho inserito di seguito.


//, ottima domanda! Mi piace molto come l'hai presentato. È facile da trovare nei risultati di ricerca e descrive il problema in diversi modi, citando le possibilità.
Nathan Basanese,

Risposte:


51

Un'altra opzione è quella di creare ~/.mime.typesnella home directory con il seguente contenuto:

application/x-shockwave-flash       swf swfl

In questo modo non verrà sovrascritto durante l'aggiornamento del sistema.

Se vuoi puoi copiare, incollare ed eseguire questo comando per fare questo:

echo 'application/x-shockwave-flash       swf swfl' >> .mime.types

Non sono necessari altri comandi, nemmeno il riavvio del browser.


1
Vuoi dire creare un documento vuoto chiamato .mime.types nella directory Home e poi inserire il testo che hai dichiarato in esso? Inoltre quale comando update-mime-database utilizziamo dopo?
Ads20000,

1
Sì, un file di testo semplice. Non è necessario eseguire update-mime-database con questa soluzione alternativa, con questo file nella directory home dovrebbe essere sufficiente.
Aleh,

6
molto più semplice, conveniente e funziona!
FairMiles,

3
Sì, non lo è.
Aleh,

3
Questo è sicuramente il metodo migliore, nessun accesso root, così semplice, e soprattutto funziona!
TuxForLife,

63

Abbiamo trovato una soluzione qui che si basa su un thread Arch qui . Da quello che ho capito, è solo un problema con Firefox che non supporta correttamente un certo tipo MIME.

Modifica /usr/share/mime/packages/freedesktop.org.xmlcome root e sostituisci quanto segue:

<mime-type type="application/vnd.adobe.flash.movie">

Con:

<mime-type type="application/x-shockwave-flash">

E poi esegui:

sudo update-mime-database /usr/share/mime

Ora i file .swf locali funzionano correttamente.


//, testato. Funziona sul mio computer 14.10 con Firefox 38.0. sudo update-mime-database /usr/share/mimeTuttavia, ho ricevuto alcuni strani errori nel comando. ➜ ~ sudo vi /usr/share/mime/packages/freedesktop.org.xml [sudo] password per nathan: ➜ sudo update-mime-database / usr / share / mime Tipo di supporto sconosciuto nel tipo 'all / all' Supporto sconosciuto digitare il tipo 'all / allfiles' Tipo di supporto sconosciuto nel tipo 'uri / mms' Tipo di supporto sconosciuto nel tipo 'uri / mmst' Tipo di supporto sconosciuto nel tipo 'uri / mmsu' Tipo di supporto sconosciuto nel tipo 'uri / pnm' Supporto sconosciuto digitare in 'uri / rtspt' Tipo di supporto sconosciuto in tipo 'uri / rtspu' ➜
Nathan Basanese

2
Questo mi sembra un trucco sporco (a differenza della risposta valida e funzionante con il file di configurazione della directory home).
Nessuno il

2
L'altra risposta è molto meglio.
Quel ragazzo brasiliano, il
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.