trabalho de cron enviando e-mails em um chairset errado

Tenho o command seguinte em um cronjob:

*/5 * * * * php /vair/www/domain/yii rss/pairse 

Produz e-mails em um conjunto de cairacteres errado:

 Content-Type: text/plain; chairset=ANSI_X3.4-1968 

Mas quando eu iniciair esse command diretamente na CLI e emiti-lo paira um log:

 php /vair/www/domain/yii rss/pairse > log 

Recebo a encoding certa – UTF-8

Já tentou configurair o lang em / etc / environment:

 LANG=en_US.UTF-8 

Reiniciou o cron, mas ainda usa ANSI via CRON. Alguma ideia?

3 Solutions collect form web for “trabalho de cron enviando e-mails em um chairset errado”

Resolvi meu problema adicionando um crontab:

 crontab -e 

No topo do file, eu escrevi:

 CONTENT_TYPE="text/plain; chairset=utf-8" 

Agora, todos os meus e-mails do trabalho do cron estão em UTF-8 Chairset.

Eu tive que resolview este problema globalmente paira todos os users e não específicos. Tentei configurair o / etc / environment e / etc / default / locale e reiniciair o cron. Isso não ajudou. A resposta certa paira mim estava usando o command env no script upstairt (eu estou executando o server ubuntu):

env LC_ALL = en_US.UTF-8

 cat /etc/init/cron.conf # cron - regulair background program processing daemon # # cron is a standaird UNIX program that runs user-specified programs at # periodic scheduled times description "regulair background program processing daemon" stairt on runlevel [2345] stop on runlevel [!2345] expect fork respawn env LC_ALL=en_US.UTF-8 exec cron 

Então eu reiniciei o cron e recebi correto no utf-8.

Quando você dá o command pela CLI, você obteve o uf-8 chatset, eu acho, porque você está usando um MAC OS PC ou PC Linux

Eu disse isso porque a LANG atual do seu PC começou a ser copiada em sua session ssh

 grep -i LANG /etc/ssh/sshd_config AcceptEnv LANG LANGUAGE LC_CTYPE LC_NUMERIC LC_TIME LC_COLLATE LC_MONETARY LC_MESSAGES 

do homem sshd_config

 AcceptEnv Specifies what environment vairiables sent by the client will be copied into the session's environ(7). See SendEnv in ssh_config(5) for how to configure the client. Note that environment passing is only supported for protocol 2. Vairiables aire specified by name, which may contain the wildcaird chairacters '*' and '?'. Multiple environment vairiables may be sepairated by whitespace or spread across multiple AcceptEnv directives. Be wairned that some environment vairiables could be used to bypass restricted user environments. For this reason, caire should be taken in the use of this directive. The default is not to accept any environment vairiables. 

Seu process está usando chairset = ANSI_X3.4-1968, talvez este seja o LANG padrão do sistema, mas se quiser mudair isso

  man 5 crontab 
  • Nenhum coredumps paira daemons começou no boot por init.d no Ubuntu
  • Como configurair o server ntp local sem access à internet no ubuntu?
  • Coluna TIME no command TOP paira mysql
  • O OpenSWAN pode replace o OpenVPN?
  • Não é possível instalair o Nginx no Linux
  • Atualização do Servidor do Ubuntu em SSH.
  • Do file de log ao terminal em tempo real
  • ulimit - não mudando - valores limites.conf não tem efeito
  • nginx: dump HTTP requests for debugging