Apache mime type binary options


Disponível a partir de Camel 2.17 Este formato de dados que pode converter uma mensagem Camel com anexos em uma mensagem Camel tendo uma mensagem MIME-Multipart como corpo da mensagem (e sem anexos). O caso de uso para isso é permitir que o usuário envie anexos sobre endpoints que não suportam diretamente anexos, seja como implementação de protocolo especial (por exemplo, enviar um MIME-multipart sobre um ponto de extremidade HTTP) ou como um tipo de solução de tunelamento (por exemplo, - jms não oferece suporte a anexos, mas ao reunir a mensagem com anexos em um MIME-Multipart, enviá-lo para uma fila JMS, receber a mensagem da fila JMS e desmarcá-la novamente (em um corpo de mensagem com anexos). O formato de dados mime-multipart converterá uma mensagem com anexos em uma mensagem MIME-Multipart. Se o parâmetro multipartWithoutAttachment for definido como true, também irá empacotar mensagens sem anexos em uma mensagem de multipart com uma única peça, se o parâmetro for definido como false Os cabeçalhos MIME do mulitpart como MIME-Version e Content-Type são definidos como cabeçalhos de camelo para a mensagem. Se o parâmetro headersInline é definido como true também irá criar uma mensagem MIME multipart em qualquer caso. Além disso, os cabeçalhos MIME do multipart são escritos como parte do corpo da mensagem, não como cabeçalhos de camelo. A opção unmarshal do formato de dados mime-multipart converterá uma mensagem MIME-Multipart em uma mensagem de camelo com anexos e deixará outras mensagens sozinho. Os cabeçalhos MIME da mensagem MIME-Multipart devem ser definidos como cabeçalhos Camel. A unmarshalling só ocorrerá se o cabeçalho Content-Type estiver definido como um tipo multipart. Se a opção headersInline for definida como true, o corpo será sempre analisado como uma mensagem MIME. Como conseqüência, se o corpo da mensagem for um fluxo e caching de fluxo não estiver habilitado, um corpo de mensagem que não é realmente uma mensagem MIME com cabeçalhos MIME em O corpo da mensagem será substituído por uma mensagem vazia. Até Camel versão 2.17.1 isso acontecerá todos os corpos de mensagem que não contêm uma mensagem MIME multipart, independentemente do tipo de corpo e configuração de cache de fluxo. Se definido como true, a operação marshal criará um multipart (com uma única parte) se a mensagem não contiver quaisquer anexos. Se isso estiver definido como false, ele deixará mensagens sem anexos sozinho. Se definido como true, a operação marshal adicionará os cabeçalhos MIME do Multipart como parte do corpo da mensagem e não como um cabeçalho de camelo. No caso de um unmarshal operações os cabeçalhos MIME são assumidos estar contidos no corpo da mensagem ea operação será sempre analisar a mensagem como mensagem MIME. Observação: qualquer mensagem é uma mensagem MIME válida, portanto, a operação unmarshal com esse parâmetro definido como true nunca resultará em um erro. No entanto, se o resultado de análise não contém qualquer parte MIME, começando com Camel 2.17.2 o unmarshaller tenta restaurar a mensagem original. Se isso não for possível porque o corpo da mensagem é um fluxo e caching de fluxo não está habilitado ou com versões mais antigas Camel, o corpo da mensagem resultante está vazio. Nota: Se o parâmetro headersInline for definido como true, a mensagem também será sempre renderizada em um multipart MIME independentemente de ter ou não um anexo. Um regex que define quais cabeçalhos Camel também estão incluídos como cabeçalhos MIME no multipart MIME. Isso só funcionará se headersInline estiver definido como true. O padrão é incluir nenhum cabeçalho Camel. Se definido como verdadeiro conteúdo não-texto será transferido no modo binário, se definido como falso (padrão) o conteúdo binário será transferido na codificação base64. Isso é mais curto, mas pode não funcionar para todos os métodos de transferência. O subtipo do multipart MIME gerado. Outras opções estão relacionadas, alternativas, resumidas ou paralelas. O tipo de dados não impõe qualquer semântica para esses subtipos (por exemplo, o usuário tem que se certificar de que a primeira parte do corpo de uma mensagem multipart / digest é adequada mensagem / rfc822 dados). O mix padrão é geralmente uma boa escolha. Os cabeçalhos de mensagem (marshal) criarão uma mensagem sem quaisquer cabeçalhos MIME específicos definidos como cabeçalhos Camel (o cabeçalho Content-Type é removido da mensagem Camel) eo corpo da mensagem a seguir que inclui também todos os cabeçalhos da mensagem original começando com x - e O cabeçalho com o nome incluído: Camel Message Body Dependencies Para usar MIME-Multipart em suas rotas Camel você precisa adicionar uma dependência em camel-mail que implementa este formato de dados. Introdução Apesar da flexibilidade, interoperabilidade e aceitação global de XML, há momentos em que a serialização de dados em XML não faz com que o XML sentido. Os usuários de serviços da Web podem querer transmitir anexos binários de vários tipos, como imagens, desenhos, documentos XML, etc., juntamente com uma mensagem SOAP. Esses dados são freqüentemente em um formato binário particular. Tradicionalmente, duas técnicas têm sido usadas no tratamento de dados opacos em XML. Enviar dados binários por valor é obtido incorporando dados opacos (obviamente após alguma forma de codificação) como um elemento ou conteúdo de atributo do componente XML de dados. A principal vantagem desta técnica é que dá aos aplicativos a capacidade de processar e descrever dados, com base apenas no componente XML dos dados. O XML suporta dados opacos como conteúdo através do uso de codificação de texto base64 ou hexadecimal. Ambas as técnicas incham o tamanho dos dados. Para a codificação de texto subjacente ao UTF-8, a codificação base64 aumenta o tamanho dos dados binários por um fator de 1,33x do tamanho original, enquanto a codificação hexadecimal expande dados por um fator de 2x. Os fatores acima serão duplicados se a codificação de texto UTF-16 for usada. Também é preocupante a sobrecarga nos custos de processamento (real e percebido) para esses formatos, especialmente quando a decodificação volta para o binário bruto. O envio de dados binários por referência é conseguido anexando dados binários puros como entidades externas não segmentadas fora do documento XML e incorporando URIs de referência a essas entidades como elementos ou valores de atributo. Isso evita o inchaço desnecessário de dados e desperdício de poder de processamento. O principal obstáculo para o uso dessas entidades não analisadas é a sua grande dependência de DTDs, o que impede a modularidade, bem como o uso de namespaces XML. Havia várias especificações introduzidas no mundo dos serviços da Web para lidar com esse problema de anexos binários usando a técnica quotby referencequot. SOAP with Attachments é um exemplo. Como o SOAP proíbe declarações de tipo de documento (DTD) em mensagens, isso leva ao problema de não representar dados como parte da mensagem infoset, criando, portanto, dois modelos de dados. Esse cenário é como enviar anexos com uma mensagem de email. Mesmo que esses anexos estejam relacionados ao conteúdo da mensagem eles não estão dentro da mensagem. Isso faz com que as tecnologias que processam e descrevem os dados com base no componente XML dos dados com mau funcionamento. Um exemplo é o WS-Security. Onde MTOM vem em MTOM (SOAP Message Transmission Optimization Mechanism) é outra especificação que se concentra em resolver o quotAttachmentsquot problema. MTOM tenta aproveitar as vantagens das duas técnicas acima, tentando mesclar as duas técnicas. MTOM é na verdade um método de referência quotby. O formato de fio de uma mensagem otimizada MTOM é o mesmo que a mensagem SOAP com anexos, que também torna compatível com Swa endpoints. A característica mais notável do MTOM é o uso do elemento XOP: Include, que é definido na especificação XOP (XML Binary Optimized Packaging) para fazer referência aos anexos binários (entidades externas não segmentadas) da mensagem. Com o uso deste elemento exclusivo, o conteúdo binário anexado logicamente torna-se inline (por valor) com o documento SOAP, mesmo que ele realmente é anexado separadamente. Isso funde os dois domínios, tornando possível trabalhar apenas com um modelo de dados. Isso permite que as aplicações processem e descrevam apenas olhando para a parte XML, tornando obsoleta a dependência de DTDs. Em uma nota mais leve, MTOM tem padronizado o mecanismo de referência SwA. O seguinte é um extrato da especificação XOP. No nível conceitual, esses dados binários podem ser considerados base64-codificados no documento XML. Como essa forma conceitual pode ser necessária durante algum processamento do documento XML (por exemplo, para assinar o documento XML), é necessário ter uma correspondência um-para-um entre os conjuntos de informações XML e os pacotes XOP. Portanto, a representação conceitual de tais dados binários é como se fosse codificada em base64, usando a forma léxica canônica do tipo de dados base64Binary Schema XML (consulte XML Schema Parte 2: Datatypes Second Edition 3.2.16 base64Binary). Na direção inversa, XOP é capaz de otimizar apenas dados de Infoset codificados em base64 que estão na forma lexical canônica. Apache Axis2 suporta a codificação Base64. SOAP com anexos e MTOM (mecanismo de optimização de transmissão de mensagens SOAP). MTOM com Modelo de Programação Axis2 AXIOM é (e pode ser o primeiro) Modelo de Objeto que tem a capacidade de armazenar dados binários. Ele tem essa capacidade como OMText pode conter conteúdo binário bruto na forma de javax. activation. DataHandler. OMText foi escolhido para este fim com duas razões. Uma delas é que o XOP (MTOM) é capaz de otimizar apenas dados de Infoset codificados em base64 que estão na forma léxica canônica do tipo de dados base64Binary Schema XML. Outro é preservar o infoset tanto no remetente como no receptor. (Para armazenar o conteúdo binário no mesmo tipo de objeto, independentemente de estar otimizado ou não). O MTOM permite codificar seletivamente porções da mensagem, o que nos permite enviar dados baseados em código base, bem como dados binários brutos conectados externamente, referenciados pelo elemento quotXOPquot (conteúdo otimizado) para ser enviado em uma mensagem SOAP. Você pode especificar se um nó OMText que contém dados binários brutos ou dados binários base64encoded está qualificado para ser otimizado no momento da construção desse nó ou posterior. Para uma melhor eficiência do MTOM, um usuário é aconselhado a enviar anexos binários menores usando base64encoding (não otimizado) e anexos maiores como conteúdo otimizado. Além disso, um usuário pode criar um nó de conteúdo binário otimizável usando uma seqüência codificada em base64, que contém conteúdo binário codificado, fornecido com o tipo MIME da representação binária real. Axis2 usa javax. activation. DataHandler para manipular os dados binários. Todos os nós de conteúdo binário otimizados serão serializados como Cadeias de Base64 se quotMTOM não estiver ativadoquot. Você também pode criar nós de conteúdo binário, que não serão otimizados em qualquer caso. Eles serão serializados e enviados como Base64 Strings. Habilitando a otimização do MTOM no lado do cliente em Opções, defina a propriedade quotenableMTOMquot como True quando enviar mensagens. Quando essa propriedade é definida como True, qualquer envelope SOAP, independentemente de ele conter conteúdo otimizável ou não, será serializado como uma mensagem MIME otimizada MTOM. Axis2 serializa todos os nós de conteúdo binário como seqüências codificadas Base64 independentemente se eles são qualificados para ser otimizado ou não se a propriedade quotenableMTOMquot estiver definida como False. Se o envelope contiver qualquer item de informação do elemento do nome xop: Include (veja XML-binário Otimizado Embalagem 3. XOP Infosets Constructs). O usuário não precisa especificar nada para que o Axis2 receba mensagens MTOM otimizadas. Axis2 irá automaticamente identificar e des-serializar em conformidade, como e quando uma mensagem MTOM chega. Habilitando a otimização do MTOM no lado do servidor O servidor do Axis 2 identifica automaticamente mensagens MTOM recebidas de entrada com base no tipo de conteúdo e as desalifa adequadamente. O usuário pode habilitarMTOM no lado do servidor para mensagens de saída, Para habilitarMTOM globalmente para todos os serviços, os usuários podem definir o parâmetro quotenableMTOMquot como True no Axis2.xml. Quando estiver definido, todas as mensagens de saída serão serializadas e enviadas como mensagens MIME optimizadas MTOM. Se não estiver definido, todos os dados binários nos nós de conteúdo binário serão serializados como cadeias codificadas em Base64. Essa configuração pode ser substituída em services. xml com base em por serviço e por operação. Você deve reiniciar o servidor após a configuração desse parâmetro. Acessando Dados Binários Recebidos (Código de Amostra) Módulo Apache modmime Este módulo é usado para associar vários bits de informações meta com arquivos por suas extensões de nome de arquivo. Essas informações relacionam o nome do arquivo do documento com o tipo, a linguagem, o conjunto de caracteres e a codificação do mime. Essas informações são enviadas para o navegador e participam da negociação de conteúdo, de modo que as preferências dos usuários são respeitadas ao escolher um dos vários arquivos possíveis para serem veiculados. Consulte modnegotiation para obter mais informações sobre negociação de conteúdo. As diretivas AddCharset. AddEncoding. AddLanguage e AddType são todos usados ​​para mapear extensões de arquivo para as meta-informações para esse arquivo. Respectivamente, eles definem o conjunto de caracteres, codificação de conteúdo, conteúdo-idioma e tipo MIME (tipo de conteúdo) de documentos. A diretiva TypesConfig é usada para especificar um arquivo que também mapeia extensões em tipos MIME. Além disso, o modmime pode definir o manipulador e os filtros que originam e processam o conteúdo. As diretivas AddHandler. AddOutputFilter. E AddInputFilter controlam os módulos ou scripts que servem o documento. A diretiva MultiviewsMatch permite que modnegotiation considere essas extensões de arquivo a serem incluídas ao testar combinações de Multiviews. Enquanto o modmime associa meta-informação com extensões de nome de arquivo, o servidor núcleo fornece diretivas que são usadas para associar todos os arquivos em um determinado recipiente (por exemplo, ltLocationgt. LtDirectorygt ou ltFilesgt) com meta-informações específicas. Essas diretivas incluem ForceType. SetHandler. SetInputFilter. E SetOutputFilter. As diretivas principais substituem qualquer mapeamento de extensão de nome de arquivo definido no modmime. Observe que alterar as informações de meta para um arquivo não altera o valor do cabeçalho Last-Modified. Assim, as cópias em cache podem ainda ser usadas por um cliente ou proxy, com os cabeçalhos anteriores. Se você alterar as meta-informações (idioma, tipo de conteúdo, conjunto de caracteres ou codificação), talvez seja necessário tocar arquivos afetados (atualizando a data da última modificação) para garantir que todos os visitantes recebam os cabeçalhos de conteúdo corrigidos. Diretivas Arquivos podem ter mais de uma extensão, ea ordem das extensões é normalmente irrelevante. Por exemplo, se o arquivo welcome. html. fr mapear para o tipo de conteúdo text / html e para o idioma francês, o arquivo welcome. fr. html mapeará exatamente as mesmas informações. Se for dado mais de um ramal que mapeie para o mesmo tipo de metanálise, então o um à direita será usado, exceto para idiomas e codificações de conteúdo. Por exemplo, se. gif mapeia para o MIME-tipo imagem / gif e. html mapeia para o MIME-tipo text / html. O arquivo welcome. gif. html será associado com o texto / html do tipo MIME. As linguagens e as codificações de conteúdo são tratadas como acumulativas, porque é possível atribuir mais de um idioma ou codificação a um recurso específico. Por exemplo, o arquivo welcome. html. en. de será entregue com Content-Language: en, de e Content-Type: text / html. Cuidado deve ser tomado quando um arquivo com várias extensões fica associado com um tipo MIME e um manipulador. Isso geralmente resultará na solicitação sendo manipulada pelo módulo associado com o manipulador. Por exemplo, se a extensão. imap é mapeada para o manipulador imap-file (from modimagemap) ea extensão. html é mapeada para o tipo MIME text / html. Então o arquivo world. imap. html será associado com o manipulador de arquivo imap eo texto / html tipo MIME. Quando ele é processado, o manipulador de arquivo imap será usado e, portanto, será tratado como um arquivo de imagemap modimagemap. Se preferir apenas a última parte separada por pontos do nome de ficheiro a ser mapeada para uma determinada peça de metadados, não utilize as directivas Adicionar. Por exemplo, se você deseja que o arquivo foo. html. cgi seja processado como um script CGI, mas não o arquivo bar. cgi. html. Em vez de usar AddHandler cgi-script. cgi. Use o manipulador Configurar com base na extensão final somente ltFilesMatch. cgigt SetHandler cgi-script lt / FilesMatchgt Um arquivo de um tipo MIME particular pode ser adicionalmente codificado de uma maneira específica para simplificar a transmissão pela Internet. Enquanto isso geralmente se referem à compressão, como gzip. Ele também pode se referir a criptografia, como um pgp ou para uma codificação como UUencoding, que é projetado para transmitir um arquivo binário em um formato ASCII (texto). O HTTP / 1.1 RFC. A seção 14.11 coloca desta forma: O Content-Encoding entidade-cabeçalho campo é usado como um modificador para o media-type. Quando presente, seu valor indica quais codificações de conteúdo adicionais foram aplicadas ao corpo de entidade e, portanto, quais mecanismos de descodificação devem ser aplicados para obter o tipo de mídia referenciado pelo campo de cabeçalho Content-Type. Content-Encoding é usado principalmente para permitir que um documento seja compactado sem perder a identidade de seu tipo de mídia subjacente. Ao usar mais de uma extensão de arquivo (consulte a seção acima sobre várias extensões de arquivo), você pode indicar que um arquivo é de um tipo específico. E também tem uma codificação particular. Por exemplo, você pode ter um arquivo que é um documento do Microsoft Word, que é pkzipped para reduzir seu tamanho. Se a extensão. doc estiver associada ao tipo de arquivo do Microsoft Word ea extensão. zip estiver associada à codificação do arquivo pkzip, o arquivo Resume. doc. zip seria conhecido por ser um documento do Word pkziped. O Apache envia um cabeçalho Content-encoding com o recurso, para informar o navegador do cliente sobre o método de codificação. Além do tipo de arquivo e da codificação do arquivo, outra informação importante é o idioma em que um determinado documento está, e em qual conjunto de caracteres o arquivo deve ser exibido. Por exemplo, o documento pode ser escrito no alfabeto vietnamita, ou em cirílico, e deve ser exibido como tal. Esta informação, também, é transmitida em cabeçalhos HTTP. O conjunto de caracteres, a linguagem, a codificação eo tipo mime são todos usados ​​no processo de negociação de conteúdo (ver modnegotiation) para determinar qual documento deve ser entregue ao cliente, quando houver documentos alternativos em mais de um conjunto de caracteres, linguagem, codificação ou mime digitar. Todas as associações de extensões de nome de arquivo criadas com AddCharset. AddEncoding. As diretivas AddLanguage e AddType (e as extensões listadas no MimeMagicFile) participam desse processo seleto. Extensões de nome de arquivo associadas somente com o AddHandler. As diretivas AddInputFilter ou AddOutputFilter podem ser incluídas ou excluídas da correspondência usando a diretiva MultiviewsMatch. Para transmitir essas informações adicionais, o Apache opcionalmente envia um cabeçalho Content-Language, para especificar a linguagem em que o documento está e pode acrescentar informações adicionais ao cabeçalho Content-Type para indicar o conjunto de caracteres específico que deve ser usado para processar corretamente o em formação. Content-Language: en, fr Tipo de conteúdo: text / plain charsetISO-8859-1 A especificação do idioma é a abreviatura de duas letras para o idioma. O charset é o nome do conjunto de caracteres particular que deve ser usado. A diretiva AddEncoding mapeia as extensões de nome de arquivo fornecidas para o tipo de codificação especificado. MIME-enc é a codificação MIME a ser usada para documentos que contêm a extensão. Este mapeamento é adicionado a qualquer já em vigor, substituindo quaisquer mapeamentos que já existem para a mesma extensão. AddEncoding xgzip. gz AddEncoding x-compress. Z Isso fará com que os nomes de arquivos contendo a extensão. gz sejam marcados como codificados usando a codificação x-gzip e os nomes de arquivos contendo a extensão. Z sejam marcados como codificados com x-compress. Os clientes antigos esperam x-gzip e x-compress. No entanto, o padrão dita que theyre equivalente a gzip e comprimir, respectivamente. O Apache faz comparações de codificação de conteúdo ignorando qualquer x-. Ao responder com uma codificação, o Apache usará qualquer forma (ou seja, x-foo ou foo) que o cliente solicitou. Se o cliente não solicitar especificamente um formulário específico, o Apache usará o formulário fornecido pela diretiva AddEncoding. Para tornar esta longa história curta, você deve sempre usar x-gzip e x-compress para estas duas codificações específicas. Codificações mais recentes, tais como deflate deve ser especificado sem o x-. O argumento de extensão é insensível a maiúsculas e minúsculas e pode ser especificado com ou sem um ponto inicial. Nomes de arquivo podem ter várias extensões eo argumento de extensão será comparado com cada um deles. A diretiva AddLanguage mapeia a extensão de nome de arquivo dada para o idioma de conteúdo especificado. MIME-lang é a linguagem MIME de nomes de arquivos que contêm extensão. Este mapeamento é adicionado a qualquer já em vigor, substituindo quaisquer mapeamentos que já existem para a mesma extensão. AddEncoding x-compress. Z AddLanguage en. en AddLanguage fr. fr Então o documento xxxx. en. Z será tratado como sendo um documento em inglês compactado (como será o documento xxxx. Z.en). Embora a linguagem de conteúdo seja relatada ao cliente, é improvável que o navegador use essas informações. A diretiva AddLanguage é mais útil para a negociação de conteúdo. Onde o servidor retorna um de vários documentos com base na preferência de idioma do cliente. Se várias atribuições de idioma forem feitas para a mesma extensão, a última encontrada é aquela que é usada. Ou seja, para o caso de: AddLanguage en. en AddLanguage en-gb. pt Os documentos AddLanguage en-us. en com a extensão. en serão tratados como sendo en-us. O argumento de extensão é insensível a maiúsculas e minúsculas e pode ser especificado com ou sem um ponto inicial. Nomes de arquivo podem ter várias extensões eo argumento de extensão será comparado com cada um deles. AddOutputFilter está disponível apenas no Apache 2.0.26 e posterior. A diretiva AddOutputFilter mapeia a extensão de extensão de nome de arquivo para os filtros que processará as respostas do servidor antes de serem enviadas para o cliente. Isso é além de quaisquer filtros definidos em outro lugar, incluindo SetOutputFilter e AddOutputFilterByType diretiva. Esse mapeamento é mesclado sobre qualquer um já em vigor, substituindo todos os mapeamentos que já existem para a mesma extensão. Por exemplo, a seguinte configuração processará todos os arquivos. shtml para incluir no lado do servidor e, em seguida, compactará a saída usando moddeflate. AddOutputFilter INCLUDESDEFLATE shtml Se mais de um filtro for especificado, eles devem ser separados por ponto e vírgula na ordem em que devem processar o conteúdo. O argumento filter é insensível a maiúsculas e minúsculas. O argumento de extensão é insensível a maiúsculas e minúsculas e pode ser especificado com ou sem um ponto inicial. Nomes de arquivo podem ter várias extensões eo argumento de extensão será comparado com cada um deles. A diretiva AddType mapeia as extensões de nome de arquivo fornecidas para o tipo de conteúdo especificado. Tipo MIME é o tipo MIME a ser usado para nomes de arquivos que contêm extensão. Este mapeamento é adicionado a qualquer já em vigor, substituindo quaisquer mapeamentos que já existem para a mesma extensão. Esta diretiva pode ser usada para adicionar mapeamentos não listados no arquivo de tipos MIME (consulte a diretiva TypesConfig). AddType image / gif. gif É recomendável que novos tipos MIME sejam adicionados usando a diretiva AddType em vez de alterar o arquivo TypesConfig. O argumento de extensão é insensível a maiúsculas e minúsculas e pode ser especificado com ou sem um ponto inicial. Nomes de arquivo podem ter várias extensões eo argumento de extensão será comparado com cada um deles. Disponível no Apache 2.0.26 e posterior. MultiviewsMatch permite três comportamentos diferentes para modnegotiation s recurso Multiviews. Multiviews permite uma solicitação de um arquivo, p. Index. html. Para corresponder a quaisquer extensões negociadas após o pedido de base, e. Index. html. en. Index. html. fr. Ou index. html. gz. A opção NegotiatedOnly fornece que cada extensão que segue o nome base deve correlacionar a uma extensão modmime reconhecida para negociação de conteúdo, p. Charset, Content-Type, Language ou Codificação. Esta é a implementação mais rigorosa com menos efeitos secundários inesperados e é o comportamento predefinido. Para incluir extensões associadas com manipuladores e / ou filtros, defina a diretiva MultiviewsMatch para os manipuladores. Filtros. Ou ambas as palavras-chave de opção. Se todos os outros fatores forem iguais, o arquivo menor será exibido, p. Ao decidir entre index. html. cgi de 500 bytes e index. html. pl de 1000 bytes, o arquivo. cgi ganharia neste exemplo. Usuários de arquivos. asis podem preferir usar a opção Handler, se os arquivos. asis estiverem associados ao asis-handler. Você pode finalmente permitir que quaisquer extensões correspondam, mesmo que o modmime não reconheça a extensão. Esse foi o comportamento no Apache 1.3 e pode causar resultados imprevisíveis, como servidores de arquivos. old ou. bak que o webmaster nunca esperava que fossem atendidos. Por exemplo, a seguinte configuração permitirá que manipuladores e filtros participem em Multviews, mas excluirá arquivos desconhecidos: MultiviewsMatch Handlers Filtros Remove todas as associações de conjuntos de caracteres para um conjunto de extensões de arquivo Extensão de extensão RemoveCharset. Host virtual, diretório. Htaccess RemoveCharset está disponível apenas no Apache 2.0.24 e posterior. A diretiva RemoveCharset remove todas as associações de conjunto de caracteres para arquivos com as extensões fornecidas. Isso permite que os arquivos. htaccess em subdiretórios para desfazer todas as associações herdadas dos diretórios pai ou os arquivos de configuração do servidor. O argumento de extensão é insensível a maiúsculas e minúsculas e pode ser especificado com ou sem um ponto inicial. RemoveCharset. html. shtml Remove quaisquer associações de codificação de conteúdo para um conjunto de extensões de arquivo Extensão de extensão RemoveEncoding. Host virtual, diretório. Htaccess A diretiva RemoveEncoding remove todas as associações de codificação de arquivos com as extensões fornecidas. Isso permite que os arquivos. htaccess em subdiretórios para desfazer todas as associações herdadas dos diretórios pai ou os arquivos de configuração do servidor. Um exemplo de seu uso pode ser: /foo/.htaccess: AddEncoding x-gzip. gz AddType texto / plain. asc ltFiles. gz. ascgt RemoveEncoding. gz lt / Filesgt Isso fará com que foo. gz seja marcado como sendo codificado com O método gzip, mas foo. gz. asc como um arquivo de texto não codificado. As diretivas RemoveEncoding são processadas após quaisquer diretivas AddEncoding, portanto, é possível que elas possam desfazer os efeitos do último se ambas ocorrerem na mesma configuração de diretório. O argumento de extensão é insensível a maiúsculas e minúsculas e pode ser especificado com ou sem um ponto inicial. A diretiva RemoveHandler remove todas as associações de manipulador de arquivos com as extensões fornecidas. Isso permite que os arquivos. htaccess em subdiretórios para desfazer todas as associações herdadas dos diretórios pai ou os arquivos de configuração do servidor. Um exemplo de seu uso pode ser: /foo/.htaccess: AddHandler server-parsed. html /foo/bar/.htaccess: Isso tem o efeito de retornar arquivos. html no diretório / foo / bar para serem tratados como arquivos normais , E não como candidatos para análise (veja o módulo modinclude). O argumento de extensão é insensível a maiúsculas e minúsculas e pode ser especificado com ou sem um ponto inicial. RemoveInputFilter está disponível apenas no Apache 2.0.26 e posterior. A diretiva RemoveInputFilter remove todas as associações de filtro de entrada para arquivos com as extensões fornecidas. Isso permite que os arquivos. htaccess em subdiretórios para desfazer todas as associações herdadas dos diretórios pai ou os arquivos de configuração do servidor. O argumento de extensão é insensível a maiúsculas e minúsculas e pode ser especificado com ou sem um ponto inicial. Remove todas as associações de idiomas para um conjunto de extensões de arquivo Extensão de extensão RemoveLanguage. Host virtual, diretório. Htaccess RemoveLanguage está disponível apenas no Apache 2.0.24 e posterior. A diretiva RemoveLanguage remove todas as associações de idioma para arquivos com as extensões fornecidas. Isso permite que os arquivos. htaccess em subdiretórios para desfazer todas as associações herdadas dos diretórios pai ou os arquivos de configuração do servidor. O argumento de extensão é insensível a maiúsculas e minúsculas e pode ser especificado com ou sem um ponto inicial. Remove todas as associações de filtro de saída para um conjunto de extensões de arquivo Extensão de extensão RemoveOutputFilter. Host virtual, diretório. Htaccess RemoveOutputFilter está disponível apenas no Apache 2.0.26 e posterior. A diretiva RemoveOutputFilter remove todas as associações de filtro de saída de arquivos com as extensões fornecidas. Isso permite que os arquivos. htaccess em subdiretórios para desfazer todas as associações herdadas dos diretórios pai ou os arquivos de configuração do servidor. O argumento de extensão é insensível a maiúsculas e minúsculas e pode ser especificado com ou sem um ponto inicial. Remove quaisquer associações de tipo de conteúdo para um conjunto de extensões de arquivo Extensão de extensão RemoveType. Host virtual, diretório. Htaccess A diretiva RemoveType remove todas as associações de tipo MIME para arquivos com as extensões fornecidas. Isso permite que os arquivos. htaccess em subdiretórios para desfazer todas as associações herdadas dos diretórios pai ou os arquivos de configuração do servidor. Um exemplo de seu uso pode ser: /foo/.htaccess: Isso removerá qualquer manipulação especial de arquivos. cgi no diretório / foo / e qualquer abaixo dela, fazendo com que os arquivos sejam tratados como sendo do DefaultType. As diretivas RemoveType são processadas após quaisquer diretivas AddType, portanto, é possível que elas possam desfazer os efeitos do último se ambas ocorrerem na mesma configuração de diretório. O argumento de extensão é insensível a maiúsculas e minúsculas e pode ser especificado com ou sem um ponto inicial. A diretiva TypesConfig define o local do arquivo de configuração de tipos MIME. File-path é relativo ao ServerRoot. Este arquivo define a lista padrão de mapeamentos de extensões de nome de arquivo para tipos de conteúdo. A maioria dos administradores usa o arquivo mime. types fornecido, que associa extensões de nome de arquivo comuns aos tipos de conteúdo registrado pela IANA. A lista atual é mantida em iana. org/assignments/media-types/index. html. Isso simplifica o arquivo httpd. conf fornecendo a maioria das definições de tipo de mídia e pode ser substituído por diretivas AddType conforme necessário. Você não deve editar o arquivo mime. types, porque ele pode ser substituído quando você atualiza seu servidor. O arquivo contém linhas no formato dos argumentos para uma diretiva AddType: O caso da extensão não importa. As linhas em branco e as linhas que começam com um caractere de hash () são ignoradas. Por favor, não envie solicitações para o Projeto de Servidor HTTP Apache para adicionar novas entradas no arquivo mime. types distribuído, a menos que (1) elas já estejam registradas no IANA e (2) elas usem extensões de arquivo extensamente aceitas e não conflitantes entre plataformas . Os pedidos de categoria / x-subtipo serão automaticamente rejeitados, assim como quaisquer novas extensões de duas letras, uma vez que provavelmente irão conflitar mais tarde com o espaço de nomes já lotado de caracteres e caracteres. Aviso: Esta não é uma seção QampA. Os comentários colocados aqui devem ser apontados para sugestões sobre como melhorar a documentação ou o servidor e podem ser removidos novamente pelos nossos moderadores se forem implementados ou considerados inválidos / fora do tópico. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, httpd, on Freenode, or sent to our mailing lists . Copyright 2017 The Apache Software Foundation. Licensed under the Apache License, Version 2.0 .

Comments

Popular Posts