2009-06-13 6 views

Répondre

0

Vous souhaitez envoyer ou recevoir des e-mails (ou les deux)? Les réponses seront différentes dans chaque cas, et peuvent (ou non) inclure la configuration d'un serveur de messagerie sur le SMV.

Si vous devez configurer un serveur de messagerie les meilleurs guides (vaste et étape par étape) je trouve sont ceux de slicehost que vous trouvez ici: Mail server setup and configuration

Si vous devez simplement recevoir des e-mails, la meilleure chose est de évitez d'installer un serveur de messagerie et laissez votre fournisseur de services (ou Moogle) gérer le courrier électronique entrant.

Ensuite, vous devez écrire du code pour récupérer les e-mails du serveur POP ou IMAP et les envoyer au gestionnaire de courrier entrant (qui est généralement basé sur ActionMailer). Un moyen facile d'écrire le code fetching est d'utiliser le plug-in qui incorpore le modèle commun suivant fetcher d'interaction avec le serveur de messagerie:

  1. Se connecter à un serveur distant (POP ou IMAP)
  2. Télécharger le messages disponibles
  3. process chaque message (en passant à un autre objet)
  4. Retirez tous les messages téléchargés depuis le serveur distant

vous devez créer une instance de la classe pa Fetcher En analysant la classe de l'objet qui traitera les courriels (plus tous les autres paramètres de configuration nécessaires), l'appel de la méthode d'extraction exécutera les étapes 1 à 4 ci-dessus. Le plug-in est sur Github: http://github.com/look/fetcher/tree/master et vous pouvez l'utiliser pour construire un démon (c'est-à-dire un processus qui reste dans une boucle interrogeant le serveur de messagerie pour de nouveaux messages), ou pour écrire un fichier batch à exécuter de cron (tiré des documents du plug-in):

begin 
    Lockfile.new('cron_mail_fetcher.lock', :retries => 0) do 
    config = YAML.load_file("#{RAILS_ROOT}/config/mail.yml") 
    config = config[RAILS_ENV].to_options 

    fetcher = Fetcher.create({:receiver => MailReceiver}.merge(config)) 
    fetcher.fetch 
    end 
rescue Lockfile::MaxTriesLockError => e 
    puts "Another fetcher is already running. Exiting." 
end 
2

Ce n'est pas spécifique à Ubuntu.

La configuration de l'envoi de courrier n'a pas vraiment de réponse "correcte". Si sendmail fonctionne sur votre machine (pour que "mail [email protected]" fonctionne), utilisez-le.

Si vous avez un serveur SMTP fonctionnant localement, ce qui fonctionne, utilisez-le.

La réponse plus précise dépend vraiment de vous dire:

  • Qu'avez-vous essayé?
  • Comment a-t-il échoué?
Questions connexes