Problema servidor de arquivos e caracteres especiais

1. Problema servidor de arquivos e caracteres especiais

Rogerio
estudotsi

(usa Ubuntu)

Enviado em 21/01/2023 - 11:39h

Bom dia galera, Nós temos uma api dotnet que estava hospedada em um servidor iis, quando passamos ela para um servidor linux, começamos a ter problemas com o download dos arquivos com caracteres especiais, alguns desses arquivos ficam gravados no servidor linux, diferente do nome de referência no banco, retornando como arquivo não localizado na hora do download, alguém já passou por isso ? Grato


  


2. Re: Problema servidor de arquivos e caracteres especiais

Alexa Bolada
alexabolada

(usa Debian)

Enviado em 21/01/2023 - 11:39h

Resposta:

O problema pode estar sendo causado pela forma como os nomes dos arquivos estão codificados. Para resolver, você precisa configurar o servidor para que aceite o encoding como UTF-8 ou ISO 8859-1. Você também vai precisar configurar o seu servidor para ler os caracteres especiais e identificá-los de forma correta.

No Linux, você pode usar o comando locale-gen para gerar um arquivo de configuração para o seu sistema local. Você pode adicionar caracteres especiais na variável LANG antes de executar esse comando. Exemplo:

$ LANG=pt_BR.UTF-8 locale-gen

Você também pode definir manualmente o encoding da saída do servidor usando a variável ADDCHARSET. Por exemplo, para definir o encoding como UTF-8:

AddCharset UTF-8 .html .css .js .xml .json .txt .text .csv .xls .xlsx .doc .docx 


Espero que isso ajude.


3. Re: Problema servidor de arquivos e caracteres especiais

Rogerio
estudotsi

(usa Ubuntu)

Enviado em 21/01/2023 - 11:56h


Valeuzão vou fazer uns testes aqui



4. Re: Problema servidor de arquivos e caracteres especiais

Paulo
paulo1205

(usa Ubuntu)

Enviado em 22/01/2023 - 22:20h

Até que esta resposta automatizada desse bot não foi tão ruim.

O importante é que todos os componentes do sistema usem o mesmo conjunto de caracteres e as mesmas codificações ou, se isso não for tecnicamente factível, que pelo menos haja a devida conversão entre conjunto de caracteres quando for necessária a comunicação entre componentes distintos.

Onde exatamente essa conversão teria de ser feita vai depender muito da configuração do seu sistema como um todo: pode ser na interface entre servidor web e cliente, entre servidor web e banco de dados, entre servidor web e sistema operacional, ou mesmo em mais de uma dessas interfaces ao mesmo tempo.


É importante também lembrar que, ao contrário do que muita gente diz (ou dizia antigamente, quando a web estava se tornando popular), UTF-8 não é uma simples extensão do ISO-8859-1, ISO-8859-15 ou Windows CP-1252 (que a própria Microsoft às vezes chama erroneamente apenas de “ANSI”). Estes últimos são conjuntos de caracteres com apenas um byte, indo de 0 a 255, ao passo que o UTF-8 é uma codificação (não um conjunto de caracteres propriamente) que pode ser usada para representar todo o conjunto de caracteres do Unicode (atualmente com mais de um milhão de caracteres atribuídos), e utiliza um byte apenas para os caracteres de 0 a 127, e dois ou mais bytes para os caracteres de 128 em diante. Além disso, o Unicode e o ISO-8859-1 coincidem totalmente quanto aos símbolos associados aos primeiros 256 caracteres (0 a 255), incluindo a faixa de caracteres de controle (entre 128 e 159), ao passo que o ISO-8859-15 altera 8 dos caracteres compreendidos entre 160 e 255, e o CP-1252 ocupa quase toda a faixa de 128 a 159 com símbolos imprimíveis, em lugar dos caracteres de controle.


... Então Jesus afirmou de novo: “(...) eu vim para que tenham vida, e a tenham plenamente.” (João 10:7-10)






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts