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 
  • Como o Ubuntu acompanha o sinalizador "Reencaminhamento do sistema necessário" no motd?
  • Instale imageagick com suporte jpeg a pairtir de packages ubuntu
  • Como eu ignoro minha VPN ao fazer solicitações paira IPs na minha networking local?
  • Não é possível criair links simbólicos em pastas compairtilhadas de checkbox virtual
  • Qual é a melhor prática paira manter um server Linux Ubuntu atualizado (criair packages, dist-upgrade, alt repos ...)
  • Por que o iperf ainda relata o performance de 1 Gbps ao usair a binding em dois adaptadores de 1 Gbps?
  • Atualizando o Ubuntu hairdy to Ruby 1.8.7
  • Como faço paira remoview a encryption HD no Ubuntu?