• This forum has a zero tolerance policy regarding spam. If you register here to publish advertising, your user account will be deleted without further questions.

vserver PHP mail()

bmi

Registered User
Ich mache erste "Erfahrungen" mit Vserver von s4f.
Max version, confixx "pro"


Frage - was ist speziel in PHP instaliert vom vserver?

Ich kan z.b. PHP funktion mail(); nicht zum laufen bringen ....
 
Original geschrieben von bmi
Ich kan z.b. PHP funktion mail(); nicht zum laufen bringen .... [/B]
Was für ein Problem hat er denn?
Wird eine Fehlermeldung ausgespuckt? (Wertest Du den Rückgabewert von mail() aus?)

Einfacher HTML-Mailer:
PHP:
<?php
  header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
  header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
  header("Cache-Control: no-store, no-cache, must-revalidate");
  header("Cache-Control: post-check=0, pre-check=0", false);
  header("Pragma: no-cache");
?>

<HTML><HEAD>
  <TITLE>HTML-Mailer</TITLE>
</HEAD>
<BODY>

<?
  $from = "";
  $to   = "";
  $sub  = "";
  $text = "<HTML><BODY>\r\n\r\n</BODY></HTML>";
  $PARAM= array();
  if (! empty($_REQUEST)) {
          $PARAM = $_REQUEST;
  }  else {
        if (! empty($HTTP_POST_VARS)) {
          $PARAM = $HTTP_POST_VARS;
    } else {
          if (! empty($HTTP_GET_VARS)) {
            $PARAM = $HTTP_GET_VARS;
          }
    }
  }

  if (isset($PARAM['mail'])) {
    echo "try to send email...<BR>\n";
    $from = $PARAM['from'];
    $to   = $PARAM['to'];
    $sub  = $PARAM['subject'];
    $text = $PARAM['message'];
        $head = "Content-Type:text/html\nContent-Transfer-Encoding: 8bit\n";
        if (!empty($from)) $head .= "from:$from\n";
    $ret  = mail($to, $sub, $text, $head);
    if ($ret) {
          echo "...sended!<BR>\n";
        } else {
      echo "...error!<BR>\n";
        }
  }
?>

<TABLE>
<FORM ACTION="mailer.php" METHOD=post>
<TR>	<TD BGCOLOR="#DDDDDD">From:</TD>
	<TD BGCOLOR="#EEEEEE"><INPUT TYPE=text WIDTH=50 NAME=from VALUE="<?=$from ?>"></TD></TR>
<TR>	<TD BGCOLOR="#DDDDDD">To:</TD>
	<TD BGCOLOR="#EEEEEE"><INPUT TYPE=text WIDTH=50 NAME=to VALUE="<?=$to ?>"></TD></TR>
<TR>	<TD BGCOLOR="#DDDDDD">Subject:</TD>
	<TD BGCOLOR="#EEEEEE"><INPUT TYPE=text WIDTH=50 NAME=subject VALUE="<?=$sub ?>"></TD></TR>
<TR>	<TD BGCOLOR="#DDDDDD">Message:</TD>
	<TD BGCOLOR="#EEEEEE"><TEXTAREA NAME=message COLS=50 ROWS=10><?=$text?></TEXTAREA></TD></TR>
<TR>	<TD BGCOLOR="#DDDDDD">&nbsp;<INPUT TYPE=hidden NAME=mail VALUE=mail></TD>
	<TD BGCOLOR="#EEEEEE"><INPUT TYPE=SUBMIT></TD></TR>
</FORM>
<TABLE>

</BODY></HTML>

huschi.
 
Weird!

society said:
habe den gleichen fehler

try to send email...
...error!

bei dem einfachen mailer

Hast du denn etwas an der Konfiguration geändert?
Wie sieht deine phpinfo() aus?
 
society said:
try to send email...
...error!
PHP gibt bei mail() nur selten einen Fehler zurück. Das deutet auf ein Konfigurationsproblem hin.
Durchsuch mal die /etc/php.ini nach 'mail' und poste die wesentlichen Zeilen.

huschi.
 
[mail function]
; For Win32 only.
SMTP = localhost

; For Win32 only.
;sendmail_from = me@example.com

; For Unix only. You may supply arguments as well (default: "sendmail -t -i").
sendmail_path = /usr/sbin/sendmail -t -i


Huschi said:
PHP gibt bei mail() nur selten einen Fehler zurück. Das deutet auf ein Konfigurationsproblem hin.
Durchsuch mal die /etc/php.ini nach 'mail' und poste die wesentlichen Zeilen.

huschi.
 
society said:
[mail function]
; For Win32 only.
SMTP = localhost

; For Win32 only.
;sendmail_from = me@example.com

; For Unix only. You may supply arguments as well (default: "sendmail -t -i").
sendmail_path = /usr/sbin/sendmail -t -i

Irgendwie fällt mir hier absolut nichts komisches auf. Die Configuration is correct!
hm.. es muss an etwas anderem liegen!
 
society said:
sendmail_path = /usr/sbin/sendmail -t -i
Mal ne ganz doofe Frage, aber hast Du sendmail genau dort?

Evtl. prüfst Du auch mal die entsprechenden Logfiles:
/var/log/httpd/error_log und /var/log/maillog (Die Namen können leicht abweichen. Dann mußt Du eben die Augen aufmachen.)

Was man sonst noch so alles Einstellen kann in der php.ini findest Du im PHP-Manual.
Nach Änderungen immer den Apache neu starten, sonst wird die php.ini nicht eingelesen.


huschi.
 
also habe die logs durchforstet nichts gefunden bis auf das ich massiv von spam bombadiert werden :)

finde auch nix was ich in der php.ini ändern sollte damit es funktioniert, wie gesagt es ging ja von anfang an nicht :)
 
das problem ist ja das er nicht mal die mail verschickt :)
nuja ich schau selber noch mal nach eventl. ist es ja wirklich nen php bug.

nuja wenns so weiter geht mach ich postfix druff :)


server4downs said:
It might be a bug in php....

http://bugs.php.net/bug.php?id=25862&edit=1 (English!)

Mehr kann ich hierzu auch nicht mehr groß erzählen.
Ich hatte jetzt keine Lust mehr den bugreport nach deinem Fehler durchzuforsten. Schau einfach at: http://bugs.php.net
 
huha nen fehler gefunden

May 24 15:51:55 djnews24 sendmail[12482]: i4ODpsDr012482: from=apache, size=46, class=0, nrcpts=1, msgid=<200405241351.i4ODpsDr012482@djnews24.net>, relay=apache@localhost
May 24 15:51:55 djnews24 sendmail[12482]: i4ODpsDr012482: to=abraxas@domainname.de, ctladdr=apache (48/48), delay=00:00:01, xdelay=00:00:00, mailer=relay, pri=30041, relay=[127.0.0.1] [127.0.0.1], dsn=5.6.0, stat=Data format error

was kann ich dagegen tun? :)
 
Hallo society,
society said:
...xdelay=00:00:00, mailer=relay, pri=30041, relay=[127.0.0.1] [127.0.0.1], dsn=5.6.0, stat=Data format error

was kann ich dagegen tun? :)
keine Ahnung ob es etwas mit deinem Problem zu tun hat, aber dieses ominöse Data Format Error hatten wir hier schonmal:

mfG
Thorsten
 
der benutzer apache existiert aber die email adresse gibts nicht
nuja ich musste ne email adresse anlegen mit apache@djnews24.net
dann gehts komischerweise.
eigentlich will ich das nicht gibt es da eine andere möglichkeit? (confixx is druff)
 
Absender muß ein anderer sein....kann man glaub über die php.ini einstellen oder im mail() Befehl mitgeben. Oder täusch ich mich da ?
 
In dem Mail-Scriptechen kann man einen Absender angeben. Teste mal damit weiter. Und bei einem Fehler _sofort_ die Maillogs checken.

PS:
Ansonsten wie im Link zum PHP-Handbuch beschrieben vorgehen.

huschi.
 
Back
Top