11
votes

Comment configurer php.ini pour utiliser gmail comme serveur de messagerie

Je veux apprendre Yii comme mon premier cadre. Et j'essaie de faire fonctionner le formulaire de contact. Mais j'ai eu cette erreur: text alt

J'ai déjà configuré le fichier php.ini de: p> xxx pré>

et modifié la valeur par défaut sur ces valeurs: p> xxx pré>

J'ai vu d'ici que gmail n'utilise pas le port 25, qui est la valeur par défaut le php.ini. J'ai donc utilisé 23. et a également ouvert ce port dans le pare-feu Windows 7. Via des règles entrantes. P>

puis j'ai également édité la configuration principale dans ma demande Yii, pour correspondre à l'email que j'utilise: p>

// application-level parameters that can be accessed
    // using Yii::app()->params['paramName']
    'params'=>array(
        // this is used in contact page
        'adminEmail'=>'myemail@gmail.com',
    ),
);


2 commentaires

Le port 25 et 23 sont fausses. De plus, Gmail accepte uniquement SMTP après l'autorisation. Donc, quelque part, vous devez également entrer votre nom d'utilisateur et votre mot de passe. Voir Mail.google.com/support/bin/answer.py ? hl = fr & Réponse = 13287 Je ne sais pas si Yii est capable d'envoyer du courrier à l'aide de TLS ou SSL


Si vous utilisez SSL, entrez 465. Si vous utilisez TLS, entrez 587.


4 Réponses :


5
votes

Heres Un script Python simple qui pourrait vous permettre d'exécuter un serveur de messagerie sur localhost, vous n'avez rien à changer. Désolé si je suis un peu en retard.

import smtpd

import smtplib

import asyncore

class SMTPServer(smtpd.SMTPServer):

    def __init__(*args, **kwargs):
        print "Running fake smtp server on port 25"
        smtpd.SMTPServer.__init__(*args, **kwargs)

    def process_message(*args, **kwargs):
        to = args[3][0]
        msg = args[4]
        gmail_user = 'yourgmailhere'
        gmail_pwd = 'yourgmailpassword'
        smtpserver = smtplib.SMTP("smtp.gmail.com",587)
        smtpserver.ehlo()
        smtpserver.starttls()
        smtpserver.ehlo
        smtpserver.login(gmail_user, gmail_pwd)
        smtpserver.sendmail(gmail_user, to, msg)
        print 'sent to '+to
        pass

if __name__ == "__main__":
    smtp_server = SMTPServer(('localhost', 25), None)
    try:
        asyncore.loop()
    except KeyboardInterrupt:
        smtp_server.close()

#end of code


3 commentaires

Process_Message Non invoqué après que j'essaie d'envoyer via mail () dans php


Ceci est en dehors de la portée de la question cessa de pêcher des représentants


OMG! Faux du serveur Cela fonctionne bien, je crée le fichier python un collier. Et dans le fichier php.ini à par défaut, ne résoutez rien. Et j'ai reçu l'email envoyé. Merci!!



0
votes

Si vous utilisez WAMP, le php.ini à configurer est présent dans le dossier Wamp / Bin / Apache / Apache_x_Y / bin

où _x_Y est lié à la version de la version Apache utilisée par votre installation WAMP


0 commentaires

3
votes

Si vous ouvrez le fichier php.ini dans WAMP, vous trouverez ces deux lignes: xxx

Ajoutez le serveur et le numéro de port de votre hôte (vous Peut avoir besoin de les contacter pour plus de détails)

Les deux lignes suivantes n'existent pas par défaut: xxx

afin que vous ayez besoin de les ajouter à être capable d'envoyer un courrier d'un serveur qui nécessite une authentification. Ainsi, un exemple peut être: xxx

PS: Vous ne devez pas utiliser votre courrier personnel ici. pour une raison évidente.


1 commentaires

Merci beaucoup pour la mise en forme. Comme je suis nouveau, je ne connaissais pas les règles. et style de marque .. @dacrosby



0
votes
  1. Extension novente = php_openssl.dll à php.ini à Wamp Server ("D: \ wamp \ bin \ Apache \ apache2.4.4 \ bin \ php.ini")

  2. dans le fichier "D: \ wamp \ www \ mantisbt-1.2.15 \ config_inc.php" xxx


0 commentaires