Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

PHP email versenden OHNE SMTP Server

Frage Entwicklung PHP

Mitglied: 60734

60734 (Level 1)

14.03.2009, aktualisiert 15:46 Uhr, 9432 Aufrufe, 11 Kommentare

Hi,

ich würde gerne mit PHP emails versenden, habe aber leider keinen SMTP Server zur verfügung und will auch ehrlich gesagt keinen installieren.

Jetzt habe ich mir gedacht, könnte man doch einfach den SMTP Server umgehen und gibt die eMail sozusagen direkt beim POP - Postfach ab (Der SMTP macht ja auch nix anderes, außer emails von PHP annehmen und an das POP - Postfach weiterleiten).

Gibt es ein PHP Skript, wo diesen SMTP Server sozusagen schon integriert hat, damit die email direkt über z.B. fsockopen beim Postfach abgegeben wird?


Gruss
Simpsons4ever
Mitglied: Dani
14.03.2009 um 15:46 Uhr
Hi Simpsons4ever,
falls du die Lösung findest, sag Bescheid,

Ganz ehrlich - lese mal genau nach, für was POP da ist und für was SMTP.


Grüße,
Dani
Bitte warten ..
Mitglied: StefanKittel
14.03.2009 um 15:53 Uhr
Hallo,

gibts doch in PHP. nennt sich "Mail".

if (mail("p2s@skittel.de", "P2S Registrierung Kopie ($p_Name, $p_Email, $p_Company, $p_Options)", $emailText, $emailHeader))

und hier kurz zur SMTP+POP Frage: http://www.p2s-handbuch-de.skittel.de/grundlagen/detailiert/miteigeneme ...

Stefan
Bitte warten ..
Mitglied: mrtux
14.03.2009 um 17:21 Uhr
Hi !

Ich denke das geht schon aber seine Formulierung war etwas daneben.

Ich vermute er meint, dass die Mail direkt ins lokale Benutzermailkonto geschrieben wird, so wie Procmail das macht. Das funktioniert dann nur auf dem localhost, was natürlich dann auch nix mit einem POP-Account zu tun hat. Es wird lediglich eine Mail als MSG in den Mailordern des lokalen Users geschrieben.

@Simson habe ich das so richtig verstanden ?

mrtux
Bitte warten ..
Mitglied: StefanKittel
14.03.2009 um 17:38 Uhr
Hallo,

das wäre mit IMAP ja möglich.

Stefan
Bitte warten ..
Mitglied: 60734
14.03.2009 um 17:48 Uhr
Also: Nochmal zu meiner Frage. Ich weiss, dass es die Funktion mail() in PHP gibt, aber das war nicht meine Frage.
Wenn ich das so richtig verstanden hab mit dem ganzen Mail kram, ist der Weg einer eMail ja in der Regel so:

Die funktion mail() überträgt die eMail an den SMTP Server. Der SMTP Server legt die eMail in einem POP-Postfach ab. Und da liegt sie dann drinnen, bis der Benutzer die eMail vom POP-Postfach abholt.

Dann ist meine Frage so: Warum kann man den SMTP nicht einfach umgehen und legt die eMail nicht direkt im POP-Postfach ab, so dass der Benutzer sie dann dort abholen kann.

Bei mir würde das dann sozusagen so funktionieren:

4164c672b3089628109ffc74d89db380-tndiagrammemailmiteigenenserverohnesmarthost_740 - Klicke auf das Bild, um es zu vergrößern


Gruss Simpsons4ever
Bitte warten ..
Mitglied: StefanKittel
14.03.2009 um 19:54 Uhr
Hallo,

SMTP -> Datenbank MailServer -> POP/IMAP

- Das Protokoll POP kann Mails nur abrufen
- Das Protokoll IMAP kann Mail zwar schreiben aber nur mit Benutzername und Kennwort (und ist in PHP so (glaub ich) nicht definiert. Da müßte man dann eine Library kaufen für).

SMTP ist halt das Protokoll für eingehende Mails.

Es ist technisch kein Problem ein Protokoll zu erstellen welches die direkte Zustellen in ein Postfach regelt.
Aber warum? SMTP macht das schon gut und ist standardisiert.
Ein weiteres Protokoll würde dann nicht von Jedem unterstüzt.

Was willst Du eigentlich machen?

Stefan
Bitte warten ..
Mitglied: 60734
15.03.2009 um 11:55 Uhr
Ich will von PHP aus einfach eMails versenden ohne dass ich den Weg über einen SMTP Server gehen muss, sozusagen die eMail direkt ins Postfach zustelle.

Ich möchte sozusagen den lokalen SMTP emulieren, und die eMail direkt abgeben.
Bitte warten ..
Mitglied: StefanKittel
15.03.2009 um 13:03 Uhr
Hallo,

OK. Also SMTP ist für Dich OK, aber Du willst die Email nicht dem Mail-Server Deines Anbieter übergeben sondern Sie direkt an den Empfänger zustellen.
Ich glaube ich weiß auch warum. Der Mail-Befehl sagt, mir zumindest, nie ob die Mail übermittelt werden konnte, da er das ja noch gar nicht weiß. Man bekommt dann nur später einen Unzustellbarkeitsbericht.

Dafür benötigt man SMTP mit PHP.
Schau mal hier: http://email.about.com/od/emailprogrammingtips/qt/et073006.htm
Habs aber nicht ausprobiert. Ist übrigends der 1. Link bei Google wenn man PHP und SMTP eingibt...

Ein Problem könnte bei dieser Sache aber durchaus sein, dass der empfangende Server Deine Mail als Spam klassifiziert und ablehnt oder in einen Spam Ordner verschiebt. Die IP Des WebServer steht garantiert nicht in der Liste der erlaubten Versand-Server.

Ich weiß ja nicht was Du erreichen willst, ich verwende Links in der Mails die den Versand der eignetlichen Mail steuern. So überprüfe ich die Adresse.

Stefan
Bitte warten ..
Mitglied: Enclave
18.03.2009 um 21:30 Uhr
Zitat von StefanKittel:
- Das Protokoll IMAP kann Mail zwar schreiben aber nur mit
Benutzername und Kennwort (und ist in PHP so (glaub ich) nicht
definiert. Da müßte man dann eine Library kaufen
für).

http://php.net/imap ?

Wenn es ohne SMTP gehen würde, würde man vermutlich keinen nehmen.
Was man aber evtl. versuchen kann: Einen externe SMTP zu nehmen, dann müsstest du keinen installieren wobei ich nicht verstehe wo da das Problem liegt. Nur ein SMTP ist doch ne Sache von 5 Minuten...


Mit freundlichen Grüßen

Enclave
Bitte warten ..
Mitglied: godlie
26.03.2009 um 16:30 Uhr
Ihr habt alle nicht so ganz gerafft was der junge will
Er will über fsockopen eine mail an einen SMTP reichen, damit der dort angebrachte delivery agent ( dovecot, courier, exchange ) die mail an das Benutzerpostfach bringt und dort ablegt.

01.
$smtp_server = fsockopen("smtp.mydomain.com", 25, $errno, $errstr, 30); 
02.
if(!$server_smtp) 
03.
04.
	// We have an error, do something 
05.
	exit; 
06.
07.
fwrite($smtp_server, "HELO its_me\r\n"); 
08.
fwrite($smtp_server, "MAIL FROM:<me@mydomain.com>\r\n"); 
09.
fwrite($smtp_server, "RCPT TO:<myfreind@hisdomain.com>\r\n"); 
10.
fwrite($smtp_server, "DATA\r\n"); 
11.
fwrite($smtp_server, "Received: from mydomain.com by hisdomain.com ; Thu, 03 Jan 2006 12:33:29 -0700\r\n"); 
12.
fwrite($smtp_server, "Date: Thu, 03 Jan 2006 12:33:22 -0700\r\n"); 
13.
fwrite($smtp_server, "From: Me <me@mydomain.com>\r\n"); 
14.
fwrite($smtp_server, "Subject:  The Next Meeting of the Board\r\n"); 
15.
fwrite($smtp_server, "To: myfreind@hisdomain.com\r\n"); 
16.
fwrite($smtp_server, "\r\nMyFreind:\r\nHow are you ?\r\n\r\n             Me.\r\n"); 
17.
fwrite($smtp_server, ".\r\nQUIT\r\n");
Wenn du jetzt beim fsockopen den smtp des gewünschten zielservers einträgst dann bist du schon mal gut dabei.

grüße
Bitte warten ..
Mitglied: 60734
28.03.2009 um 00:44 Uhr
so hab mir das grad mal alles durchgelesen. Ich habe daraus jetzt mal ein beispielcode entwickelt. Siehe hier, geht aber noch net wirklich

01.
<?php 
02.
 
03.
function mailx($to,$betreff,$text,$from) { 
04.
$server = explode("@",$to); 
05.
$server = $server[1]; 
06.
getmxrr ($server,$hosts); 
07.
$server = $hosts[0]; 
08.
 
09.
 
10.
$smtp_server = fsockopen($server, 25, $errno, $errstr, 30); 
11.
if(!$server_smtp) 
12.
13.
	// We have an error, do something 
14.
	exit; 
15.
16.
fwrite($smtp_server, "HELO its_me\r\n"); 
17.
fwrite($smtp_server, "MAIL FROM:$from\r\n"); 
18.
fwrite($smtp_server, "RCPT TO:$to\r\n"); 
19.
fwrite($smtp_server, "DATA\r\n"); 
20.
fwrite($smtp_server, "Received: from mydomain.com by hisdomain.com ; Thu, 03 Jan 2006 12:33:29 -0700\r\n"); 
21.
fwrite($smtp_server, "Date: Thu, 03 Jan 2006 12:33:22 -0700\r\n"); 
22.
fwrite($smtp_server, "From: Me $from\r\n"); 
23.
fwrite($smtp_server, "Subject: $betreff\r\n"); 
24.
fwrite($smtp_server, "To: $to\r\n"); 
25.
fwrite($smtp_server, "\r\n$text\r\n\r\n            \r\n"); 
26.
fwrite($smtp_server, ".\r\nQUIT\r\n"); 
27.
 
28.
fclose($smtp_server); 
29.
30.
mailx("ich@web.de","test","test","ich <ich@gmx.de>"); 
31.
?>
Das müsste so doch dann gehen, oder?
Bitte warten ..
Neuester Wissensbeitrag
Ähnliche Inhalte
E-Mail
gelöst Falsche SMTP Server IP Adresse (6)

Frage von laster zum Thema E-Mail ...

Apache Server
gelöst OsTicket Email versenden klappt nicht (5)

Frage von ClepToManix zum Thema Apache Server ...

Visual Studio
gelöst Email Versenden Mit VB (2)

Frage von UltraZz zum Thema Visual Studio ...

Datenbanken
gelöst Access Report per Email versenden, hat jemand zufällig einen Code dafür(VBA) (7)

Frage von Dr.Cornwallis zum Thema Datenbanken ...

Heiß diskutierte Inhalte
Windows Userverwaltung
Ausgeschiedene Mitarbeiter im Unternehmen - was tun mit den AD Konten? (27)

Frage von patz223 zum Thema Windows Userverwaltung ...

Viren und Trojaner
Aufgepasst: Neue Ransomware Goldeneye verbreitet sich rasant (20)

Link von Penny.Cilin zum Thema Viren und Trojaner ...

LAN, WAN, Wireless
FritzBox, zwei Server, verschiedene Netze (20)

Frage von DavidGl zum Thema LAN, WAN, Wireless ...

Windows Netzwerk
Windows 10 RDP geht nicht (18)

Frage von Fiasko zum Thema Windows Netzwerk ...