{"id":111,"date":"2012-09-21T09:32:00","date_gmt":"2012-09-21T12:32:00","guid":{"rendered":"http:\/\/helbertt.16mb.com\/site\/index.php\/2012\/09\/21\/configurando-o-php-para-enviar-email-no-windows-atraves-do-gmail\/"},"modified":"2012-09-21T09:32:00","modified_gmt":"2012-09-21T12:32:00","slug":"configurando-o-php-para-enviar-email-no-windows-atraves-do-gmail","status":"publish","type":"post","link":"https:\/\/helbertt.xyz\/site\/configurando-o-php-para-enviar-email-no-windows-atraves-do-gmail\/","title":{"rendered":"Configurando o PHP para enviar email no windows atrav\u00e9s do gmail"},"content":{"rendered":"<p>Quem desenvolve com php no windows sempre enfrenta o problema de enviar emails usando o servidor local para testar seus scripts, para resolver esse problema nesse tutorial vamos configurar o php para enviar emails atrav\u00e9s do gmail.<\/p>\n<p>Para isso vamos precisar baixar o fake sendmail para enviar os emails e stunnel(multiplatform SSL tunneling proxy) para utilizar o gmail.<\/p>\n<p><\/p>\n<ul>\n<li><a href=\"http:\/\/www.glob.com.au\/sendmail\/\" target=\"_blank\">Download do fake sendmail<\/a><\/li>\n<li><a href=\"ftp:\/\/ftp.stunnel.org\/stunnel\/\" target=\"_blank\">Download do stunnel<\/a><\/li>\n<\/ul>\n<p>Neste tutorial vamos utilizar o ambiente do wampserver para fazer as configura\u00e7\u00f5es.<\/p>\n<p><b>Configurando o fake sendmail<\/b><\/p>\n<p>Ap\u00f3s efetuar o download abra o arquivo sendmail.zip e extraia os arquivos, extraia os arquivos para \u201cC:wampsendmail\u201d.<\/p>\n<p>Abra o arquivo \u201csendmail.ini\u201d localizado na pasta \u201cC:wampsendmail\u201d e edite as seguintes informa\u00e7\u00f5es:<\/p>\n<p><code>smtp_server=localhost<br \/>smtp_port=25<br \/>smtp_ssl=auto<br \/>default_domain=mydomain.com<br \/>error_logfile=error.log<br \/>auth_username=seuemail@gmail.com<br \/>auth_password=suasenha<br \/>force_sender=webmaster@mail.com<br \/><\/code><\/p>\n<p>As configura\u00e7\u00f5es auth_username, auth_password, force_sender devem ser substituidas respectivamente por email do gmail, senha do gmail e email do webmaster(caso n\u00e3o tenha coloque novamente seu gmail).<\/p>\n<p>Obs: As linhas com \u201c;\u201d no in\u00edcio s\u00e3o linhas comentadas, n\u00e3o fazem efeito, caso alguma das linhas acima(default_domain) n\u00e3o esteja comentada no arquivo, edite e adicione o \u201c;\u201d no in\u00edcio da linha.<\/p>\n<p>Salve e feche o arquivo \u201csendmail.ini\u201d.<\/p>\n<p><b>Configurando o stunnel<\/b><\/p>\n<p>Instale o stunnel executando o arquivo baixado.<\/p>\n<p>Ap\u00f3s instalar, v\u00e1 no menu iniciar &gt;&gt; stunnel &gt;&gt; edit stunnel.config, efetue as seguintes altera\u00e7\u00f5es:<\/p>\n<p><code>cert = stunnel.pem<br \/>socket = l:TCP_NODELAY=1<br \/>socket = r:TCP_NODELAY=1<br \/>debug = 7<br \/>output = stunnel.log<br \/>client = yes<br \/>[ssmtp]<br \/>accept = 127.0.0.1:25<br \/>connect = smtp.gmail.com:465<br \/><\/code><\/p>\n<p>Caso alguma dessas linhas esteja comentada, com \u201c;\u201d no in\u00edcio da linha, retire o \u201c;\u201d para que a linha fa\u00e7a efeito.<\/p>\n<p>Salve e feche o arquivo.<\/p>\n<p>Obs: Caso voc\u00ea tenha dificuldades para editar\/salvar o arquivo, verifique as permiss\u00f5es de seguran\u00e7a do arquivo(propriedades &gt;&gt; seguran\u00e7a) que fica na pasta de instal\u00e7\u00e3o do stunnel, escolhido no momento da instala\u00e7\u00e3o, porque precisa da permiss\u00e3o de administrador para edita-lo.<\/p>\n<p>Execute o stunnel, menu iniciar &gt;&gt; stunnel &gt;&gt; run stunnel.<\/p>\n<p><b>Configurando o php.ini<\/b><\/p>\n<p>Para finalizar nossas configura\u00e7\u00f5es vamos editar o arquivo php.ini, abra o arquivo php.ini (clique no \u00edcone do wamp &gt;&gt; PHP &gt;&gt; php.ini) e de um ctrl+f para localizar a palavra \u201csmtp\u201d, agora vamos editar o arquivo com as seguites configura\u00e7\u00f5es na parte [mail function]:<\/p>\n<p><code>[mail function]<br \/>; For Win32 only.<br \/>;SMTP = localhost<br \/>;smtp_port = 25<\/p>\n<p>; For Win32 only.<br \/>;sendmail_from = dm.matheus@gmail.com<\/p>\n<p>; For Unix only. &nbsp;You may supply arguments as well (default: \"sendmail -t -i\").<br \/>sendmail_path = \"C:wampsendmailsendmail.exe -t\"<\/p>\n<p>; Force the addition of the specified parameters to be passed as extra parameters<br \/>; to the sendmail binary. These parameters will always replace the value of<br \/>; the 5th parameter to mail(), even in safe mode.<br \/>;mail.force_extra_parameters =<br \/><\/code><\/p>\n<p>Salve e feche o arquivo php.ini e reinicie o servidor (clique no \u00edcone do wamp &gt;&gt; Restart All Services).<\/p>\n<p>Obs: O endere\u00e7o do sendmail_path depende de onde voc\u00ea colocou o fake sendmail.<\/p>\n<p><b>Testando nossa configura\u00e7\u00e3o<\/b><\/p>\n<p>Agora vamos testar nossa configura\u00e7\u00e3o, crie o script \u201csendmail.php\u201d no servidor( C:wampwww ), com o conte\u00fado a seguir.<\/p>\n<p><code><span style=\"font-family: monospace;\">&nbsp; &nbsp; $email = 'to@email.com'; \/\/ email para onde a mensagem deve ir<\/span><br \/><span style=\"font-family: monospace;\">&nbsp; &nbsp; $resultado = mail($email, 'Testando nossa configura\u00e7\u00e3o', 'Ol\u00e1, nossa configura\u00e7\u00e3o funcionou.');<\/span><br \/><span style=\"font-family: monospace;\">&nbsp; &nbsp; if($resultado)<\/span><br \/><span style=\"font-family: monospace;\">&nbsp; &nbsp; {<\/span><br \/><span style=\"font-family: monospace;\">&nbsp; &nbsp; &nbsp; &nbsp; echo 'Seu email foi enviado com sucesso.';<\/span><br \/><span style=\"font-family: monospace;\">&nbsp; &nbsp; }<\/span><br \/><span style=\"font-family: monospace;\">&nbsp; &nbsp; else<\/span><br \/><span style=\"font-family: monospace;\">&nbsp; &nbsp; {<\/span><br \/><span style=\"font-family: monospace;\">&nbsp; &nbsp; &nbsp; &nbsp; echo 'N\u00e3o foi poss\u00edvel enviar seu email.';<\/span><br \/><span style=\"font-family: monospace;\">&nbsp; &nbsp; }<\/span><br \/><\/code><\/p>\n<p>Edite a vari\u00e1vel $email com o email para onde a mensagem deve ir.<\/p>\n<p>Agora abra seu navegador e digite o endere\u00e7o http:\/\/localhost\/sendmail.php, se tudo ocorrer bem voc\u00ea receber\u00e1 a seguinte mensagem: Seu email foi enviado com sucesso.<\/p>\n<p>Verifique se o email chegou na sua caixa de entrada.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Quem desenvolve com php no windows sempre enfrenta o problema de enviar emails usando o servidor local para testar seus<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"colormag_page_container_layout":"default_layout","colormag_page_sidebar_layout":"default_layout"},"categories":[98,80,62,93,92,65,75],"tags":[],"_links":{"self":[{"href":"https:\/\/helbertt.xyz\/site\/wp-json\/wp\/v2\/posts\/111"}],"collection":[{"href":"https:\/\/helbertt.xyz\/site\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/helbertt.xyz\/site\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/helbertt.xyz\/site\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/helbertt.xyz\/site\/wp-json\/wp\/v2\/comments?post=111"}],"version-history":[{"count":0,"href":"https:\/\/helbertt.xyz\/site\/wp-json\/wp\/v2\/posts\/111\/revisions"}],"wp:attachment":[{"href":"https:\/\/helbertt.xyz\/site\/wp-json\/wp\/v2\/media?parent=111"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/helbertt.xyz\/site\/wp-json\/wp\/v2\/categories?post=111"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/helbertt.xyz\/site\/wp-json\/wp\/v2\/tags?post=111"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}