Mir ist nun bekannt, dass man über den HTTP-Server mittels PHP E-Mails empfangen kann…
Das möchte ich gerne auch machen. Aber leider habe ich keine Ahnung, wie das gehen könnte, ausser dass E-Mails ganz normale Dateien sind weiss ich nähmlich nicht viel…
empfangen?
gibts bei PHP listening sockets? hab mich damit nie beschäftigt, weil ich es bisher für unsinnig hielt, das in php zu machen.
Ansonsten denke ich könnte man E-Mails mit fsockopen (was natürlich hier auf bplaced nicht geht) und dem POP3 Protokoll (oder eines der anderen) auslesen. Das sollte nicht schwierig sein.
Eigentlich wollte ich, dass direkt hinter *@meinedomain.xy direkt ein php skript steckt, welches immer beim eintreffen einer Mail ausgeführt wird, und dieses dann verarbeitet, je nach dem halt in MySQL oder halt als File speichert…
ich hab mir das eigentlich so vorgestellt, dass es eig. wie http-requests funktioniert, also dass eigetlich immernoch der webserver dazwischen steckt und halt ein Email entgegennimmt, statt eines gewöhlichen Requests.
Ich hab auch schon mal ein script gefunden, welches das eigentlich möglich machen sollte, aber das ist halt nicht freeware, und der preis weis ich gerade nicht mehr…
[quote]gibts bei PHP listening sockets?[/quote]Nein, ich glaube nicht. Da würde ja sowieso die executionstime im wege stehen…
HTTP läuft auf Port 80, der E-Mail verkehr aber läuft über port 25… außerdem sind es zwei unterschiedliche Protokolle… die ähneln sich zwar in mancher Hinsicht, aber SMTP ist mit HTTP nicht kompatibel.
Du brauchst einen Mail-Server. Vielleicht kann man die so konfigurieren, dass PHP genutzt wird.
Wer weiß, vielleicht kennt sich da jemand anderes besser aus.
natürlich kann man einen Webserver auch auf einen anderen Port laufen lassen.
Das größere Problem ist eher, dass die Protokolle unterschiedlich sind.
Gemeinsam haben sie, dass sie sowas wie Headerzeilen nutzen und beides Textbasierend ist.
Allerdings ist SMTP mehr eine art “chat”, d.h. Client und Server tauschen mehrere Befehle miteinander aus, während bei HTTP grundsätzliche EINE Anfrage, und EINE Antwort gesendet wird.
Hinzu kommt noch, dass SMTP vollkommen andere Befehle nutzt als HTTP, und bei SMTP der Sever üblicherweise den ersten Schritt macht, und bei HTTP macht der Client den ersten Schritt.
Kannst es dir ja einfach mal anschauen. Wikipedia ist da ganz hilfreich. http://de.wikipedia.org/wiki/Simple_Mail_Transfer_Protocol http://de.wikipedia.org/wiki/Hypertext_Transfer_Protocol
Die beiden Protokolle vertragen sich einfach nicht. Wobei es natürlich SEIN kann, dass es irgendwelche Module für Apache gibt… da Lohnt sich aber (denke ich) ein eigenständiger Mailserver eher.
nein, es geht nicht weil Apache keine Ahnung hat, was es mit einem SMTP-Request machen soll, das verwendet nämlich weder den HTTP-Header, noch Hostinformationen…