Mensagem de debugging “Recurso interpretado como outro, mas transferido com aplicativo de tipo MIME / javascript”

OK, eu entendo o que as mensagens significam , mas não tenho certeza do que está causando isso. Estou usando o Safari e o Web Inspector no Mac OS X, a propósito.

Eu tenho o seguinte na minha cabeça de documento:

  

jquery.js é tratado bem, mas o outro arquivo causa o aviso. Parece também que o javascript neste arquivo nunca é executado.

O arquivo está sendo servido via mod_deflate , portanto, ele é codificado por gzip, mas o mesmo ocorre com o outro arquivo.

Alguém tem alguma ideia do que está causando isso ou como resolvê-lo?

Felicidades tudo, Gaz.

parece ser um bug no safari / webkit. talvez este ou qualquer um destes . tente atualizar seu safári. se não houver uma versão estável mais recente, tente o beta 4.

Uma imagem com um atributo “src” vazio gera este erro no Windows-Chrome:

  

… enquanto que …

  

… não.

Cheguei aqui porque meu conjunto de resultados do ajax estava retornando dados “src” que estavam vazios, mas o img ainda estava sendo inserido na página.

Resolvido!

Eu tive esse erro por vários dias. Isso estava me enlouquecendo porque não me permitia usar o depurador de scripts do firefox firebug. Por fim, meu erro foi solucionado quando removi um URL vazio em uma propriedade de estilo “background-image: url ()” .

Isso tem sido muito doloroso do que eu realmente espero que alguém possa usar este conselho.

Não acho que seja um bug, tente adicionar o tipo MIME ao seu arquivo .htaccess Por exemplo, coloque ou adicione o seguinte conteúdo ao seu arquivo .htaccess (que deve estar no mesmo local de suas pastas .js ou acima)

 #JavaScript AddType application/x-javascript .js 

Isso resolveu minha tree “Recurso interpretado como outro, mas transferido …” avisos. Toda vez que você tem esse tipo de aviso, significa que você não tem informações suficientes no seu arquivo .htaccess.

BTW1: Como você está modificando o arquivo .htaccess, certifique-se de reiniciar seu servidor.

BTW2: Eu também poderia limpar os mesmos avisos para arquivos GIF no Safari 4 com isto:

 #GIF AddType image/gif .gif 

BTW3: Para outros tipos de arquivos: veja a lista w3schools ou o guia htaccess

Este aviso aparece porque nenhum tipo de script padrão é especificado. Tente adicionar a seguinte diretiva ao seu arquivo HTML:

Você pode ler mais sobre as especificações de script padrão aqui: http://www.w3.org/TR/REC-html40/interact/scripts.html#h-18.2.2.1

Você precisa usar uma ferramenta para visualizar os headers HTTP enviados com o arquivo, algo como LiveHTTPHeaders ou HTTPFox são o que eu uso. Se os arquivos forem enviados a partir do servidor da Web sem um tipo MIME ou com um tipo MIME padrão, como text / plain, isso pode ser causado por esse erro.

É por causa do período no nome do arquivo. É estúpido, mas sempre que houver um período no nome do arquivo js, ​​você obterá esse erro, e eu me deparo com situações em que ele realmente impedirá que o arquivo js seja carregado.

Parece um bug nas políticas de manipulação de cache do Safari.

Solução alternativa no apache:

 Header unset ETag Header unset Last-Modified 

Acabei de receber isso e resolvi localmente no meu mac. Por algum motivo, o arquivo javascript em questão tinha permissions ruins. Eu notei que quando eu olhei para ele no firebug eu estava recebendo um 403. Espero que ajude alguém.

Eu tive o mesmo problema com um arquivo css em vez de javascript. (usando o xitami webserver)

o que foi consertado para mim foi adicionar na seção MIME do xitami.cfg:

css = text / css

Descobri que a nomeação dos meus arquivos css estava em conflito com os filtros proxy

http://www.dating.com (que não é meu site) foi bloqueado e meus arquivos css e js foram chamados de dating.css e dating.js. O filtro estava bloqueando isso. Talvez seja esse o caso com alguns de vocês, trabalhando em sistemas corporativos.

Este bug parece ter ressurgido (notado em novembro de 2010)

Eu acho que os relatórios de bugs do WebKit envolvidos são este e este . Essencialmente, resume-se a manipulação de cache incorreta ao fazer um If-Modified-Since que obtém uma resposta 304 .

Outra causa comum desse erro no Mac é a sinalização de quarentena da Apple.

ls o diretório que contém o (s) recurso (s) em questão. Se você vir o indicador de atributo estendido, isto é, o pequeno símbolo @ no final do bloco de permissions (por exemplo, -rw-r--r--@ ), o arquivo poderá ser colocado em quarentena.

Tente ls -la@e e procure por com.apple.quarantine

O comando a seguir removerá a quarentena:

 xattr -d com.apple.quarantine /path/to/file 

Parece haver muitas coisas que causam isso. Para mim, era uma regra de reescrita em letra minúscula no IIS. Mudou os arquivos problemáticos (js e png) para minúsculas e o problema foi embora.

No APACHE

Acrescente esses tipos MIME ao .htaccess em sua raiz. Eu recomendo a segunda linha, já que isso pode ajudar a prevenir futuros avisos de interpretação MIME com arquivos CSS.

 AddType application/x-javascript .js AddType text/css .css 

Reinicie seu Apache …

No NGINX

Adicione ao seu nginx.conf ou ao seu arquivo de importação mime.types (Método Recomendado). Adicione qualquer um ou todos conforme necessário / relevante.

 types { text/html html htm shtml; text/css css; text/xml xml; image/gif gif; image/jpeg jpeg jpg; application/x-javascript js; application/rss+xml rss; text/plain txt; image/png png; image/tiff tif tiff; image/svg+xml svg svgz; image/webp webp; application/postscript ps eps ai; application/pdf pdf; application/rtf rtf; application/vnd.ms-excel xls; application/vnd.ms-powerpoint ppt; application/msword doc; application/x-shockwave-flash swf; application/xhtml+xml xhtml; application/zip zip; }