Como definir o tipo de conteúdo padrão para todas as respostas do apache sem erro?

1

Eu quero que todas as respostas de erro não apache sejam enviadas com o tipo de conteúdo 'application/json; charset=UTF-8' . Como faço isso?

Eu tentei adicionar:

<VirtualHost *:80>
    AddType 'application/json; charset=UTF-8'
</VirtualHost>

Mas isso requer a especificação da extensão do arquivo, não quero ligar a extensões de arquivo, pois não estou solicitando arquivos específicos, mas recursos como este:

http://my.domain.com/rest/articles/

Eu também tentei a diretiva DefaultType :

<VirtualHost *:80>
      DefaultType 'application/json; charset=UTF-8'
</VirtualHost>

mas isso não parece estar funcionando - Content-Type:text/html; charset=utf-8 é retornado. Estou faltando alguma coisa?

    
por Max Koretskyi aka Wizard 26.06.2015 / 11:56

1 resposta

1

Você pode usar a diretiva ForceType do Apache, explicada na documentação . Você tem que usá-lo em um contexto de diretório, local ou arquivos. Para JSON, você desejaria usar ForceType application/json . Então, no seu vhost, você provavelmente gostaria de fazer algo como:

<VirtualHost *:80>
     <Location />
          ForceType application/json
     </Location>
</VirtualHost>
    
por 27.06.2015 / 13:01