Hi,
hast du in der php.ini die SMTP Einstellungen denn geändert?
Hallo,
Ich habe heute erst mal mit php angefangen. Brauche ich dazu eigentlich einen Webserver, oder kann ich einfach die Datei dann so anklicken (Dann öffnet sich bei mir Firefox)?
Wo finde ich die php.ini?
Was für ein Programm brauche ich da eigentlich noch?
ich habe jetzt KF Websever installiert, und php gedownloaded und auch installiert.
Dann habe ich im KF Webserver php aktiviert (MIME -> CGI Filter Mappings
Dort bei MIME-Type habe ich „application/x-httpd-php“ eingegeben.
Dann darunter den Pfad zur php-cgi.exe)
So, wenn ich nun über meinen Webserver die Index.html aufrufe kommt aber
nur eine leere Seite.
wenn deine Seite index.html heißt, nimmt der Webserver an, dass es sich um eine HTML Datei handelt und schickt diese Datei ohne weitere Verarbeitung direkt an deinen Browser.
Du möchtest doch aber, dass die Datei erst durch den PHP Parser läuft - oder?
Dann gibt es zwei Möglichkeiten.
du sagst dem Webserver, dass auch HTML Dateien durch den PHP Parser laufen sollen
du nennst deine Datei einfach index.php statt index.html
Danke für deine Antwort.
Ich habe die Datei nun Index.php genannt.
Wenn ich jetzt die Webseite aufrufe, dann braucht die Seite ewig zum laden. Im Taskmanager sehe ich dann, dass die php-cgi.exe ausgeführt wird. mein CPU ist dann zu 95% ausgelastet. Wenn ich im Taskmanager dann die php-cgi.exe beende, dann zeigt mein Browser, der immernoch die Seite versucht zu laden an: „Internal Error“.
Was kann ich da machen?
Wenn du Usereingaben für die mail-Funktion benutzt, dann
solltest du dir unbedingt [FAQ:2435] durchlesen, weil man da
leicht Sicherheitslücken einbauen kann.
Alternativ kannst du auch in der php.ini einen Standardabsender einstellen. Der betreffende Abschnitt sieht bei mir so aus:
[mail function]
; For Win32 only.
SMTP = localhost
smtp\_port = 25
; For Win32 only.
sendmail\_from = [email protected]
Wichtig ist natürlich, dass der SMTP-Server, der da angegeben ist, wirklich existiert.
Allerdings gibt es hier ein Problem: Öffentliche SMTP-Server wie etwa der von web.de verlangen Benutzername und Passwort, was aber von der PHP-SMTP-Schnittstelle nicht unterstützt wird. Ein eigener SMTP-Server auf dem gleichen Rechner kann zwar installiert und ohne Anmeldung betrieben werden, allerdings hat er oft Probleme beim Weiterleiten der Mails ins Internet. Der Grund: Mails, die von einem SMTP-Server mit Einwahlverbindung stammen, werden beim Eintreffen auf Servern wie web.de oft als Spam eingestuft und abgelehnt.
Eine mögliche Lösung: Der Kontakt zum SMTP-Server erfolgt nicht durch PHP, sondern durch einen separaten SMTP-Client, der dann auch Benutzername und Passwort mitsenden kann. Siehe dazu hier: http://www.svenkubiak.de/2008/07/14/fake-sendmail-se…
Die Einträge SMTP, smtp_port und sendmail_from in der php.ini sind dann wirkungslos, die entsprechenden Werte müssen dann in der sendmail.ini eingetragen werden.