Desativa o envio de correio PHP no Mac OS?

2

Estou desenvolvendo uma aplicação web em PHP, e meu Macbook, rodando o Snow Leopard, está enviando e-mails quando a função mail () do PHP é chamada. Está enviando e-mails para os clientes, e isso é ruim.

EU PODERIA evitar isso no meu código, mas prefiro apenas desabilitar o envio de mensagens para minha máquina. Existe uma maneira de fazer isso no Mac OS?

    
por Chad Johnson 15.12.2009 / 22:25

4 respostas

3

A resposta mais simples é ter um switch na sua lógica de envio que verifique se DEVELOPMENT está ou não definido. Se for, ele envia o e-mail para um arquivo; caso contrário, ele assume um ambiente de produção e continua com o processo de envio normal.

Tudo o que você precisa fazer é definir DEVELOPMENT = TRUE na sua configuração e pode brincar sem incomodar os clientes!

Sua configuração local do postfix está localizada em /etc/postfix . Parece haver uma duplicata em /private/etc/postfix , mas eu não estou tão familiarizado com o OSX. No linux eu poderia apenas remover o daemon e impedir que o serviço fosse executado. Isso pode causar erros de tempo de execução para seus programas e parece desnecessário.

    
por 16.12.2009 / 00:16
2

Para desabilitar parcialmente a execução do postfix sudo launchctl unload /System/Library/LaunchDaemons/org.postfix.master.plist

No entanto, os e-mails que você está tentando enviar ficarão presos em /var/spool/postfix/maildrop , mas não serão enviados.

    
por 16.12.2009 / 05:39
1

A coisa mais fácil que eu posso pensar (Se você usa apenas webmail ou Imap), simplesmente no bloco de nível de rede (roteador) de saída da porta 25 da sua máquina, ou use o firewall OS X e bloqueie a porta 25 de saída. / p>

Se isto não funcionar, eu simplesmente verificaria a inserção de um relay inexistente em seu arquivo php.ini para que todos os e-mails simplesmente não enviem ...

No entanto, seria melhor usar um relé real que simplesmente não envia, mas parece que sim - bloquear o firewall ou o aplicativo ou a retransmissão falsa podem produzir erros que você talvez não considere e causar problemas quando realmente vai viver.

    
por 15.12.2009 / 22:32
1

Você precisa compartimentalizar seu ambiente de desenvolvimento a partir do seu ambiente de lançamento.

Essa é a solução para o seu problema real.

    
por 18.12.2009 / 17:59