Zurück   WordPress Deutschland Forum > Support > Konfiguration

Antwort
 
Themen-Optionen Ansicht
Alt 08.03.2007, 17:33   #1 (permalink)
PostRank: 3
 
Registriert seit: 24.07.2005
Beiträge: 136
PHP mail() und HostEurope

Hi,

an irgend einer Sicherheitsenstellung bei HostEurope (wo allem meine WP-Blogs und Foren laufen) liegt es, dass Mails mit phpmail() nicht verschickt werden. Ich habe schon alle möglichen Plugins ausprobiert.

Kennt sich irgend jemand soweit aus, dass er mir sagen kann, was das für eine Sicherheitseinstellung sein kann und wie ich die deaktiviere/umgehe?
__________________
Meine WP-Blogs: SimulationsRaum | F.LM - Texte zum Film
F.LM ist offline   Mit Zitat antworten
Alt 08.03.2007, 17:46   #2 (permalink)
PostRank: 8
 
Registriert seit: 19.01.2006
Beiträge: 840
Die Suchfunktion des Forums hätte hier wohl auch schon weiterhelfen können: Keine E-Mail Benachrichtigung bei neuen Kommentaren.

Alternativ auch die (zugegebenermaßen nicht ganz so übersichtliche) FAQ bei Hosteurope

Geändert von spickzettel (08.03.2007 um 17:50 Uhr).
spickzettel ist offline   Mit Zitat antworten
Alt 06.08.2007, 09:13   #3 (permalink)
PostRank: 3
 
Registriert seit: 24.07.2005
Beiträge: 136
Danke für den Hinweis.

Das Problem ist, dass ich eine alte KIS-Version in meinem Paket habe, die auch nicht aktualisiert wird (weil es ein Gratis-Presseaccount ist). Daher gibt es im Skripte-Menü die Einstellungsmöglichkeit nicht.

Wie kann ich den Parameter "-f absender@hier-bitte-ihren-domainnamen-einsetzen.de" denn innerhalb von Wordpress an das php_mail() übergeben? Bzw. in welcher Datei muss ich das Skript modifizieren?
__________________
Meine WP-Blogs: SimulationsRaum | F.LM - Texte zum Film
F.LM ist offline   Mit Zitat antworten
Alt 06.08.2007, 09:34   #4 (permalink)
PostRank: 3
 
Registriert seit: 24.07.2005
Beiträge: 136
Ich hab die Angabe mittlerweile (in wp-includes/pluggable.php) entdeckt:

Code:
if ( !function_exists( 'wp_mail' ) ) :
function wp_mail($to, $subject, $message, $headers = '') {
	global $phpmailer;

	if ( !is_object( $phpmailer ) ) {
		require_once(ABSPATH . WPINC . '/class-phpmailer.php');
		require_once(ABSPATH . WPINC . '/class-smtp.php');
		$phpmailer = new PHPMailer();
	}

	$mail = compact('to', 'subject', 'message', 'headers');
	$mail = apply_filters('wp_mail', $mail);
	extract($mail, EXTR_SKIP);

	if ( $headers == '' ) {
		$headers = "MIME-Version: 1.0\n" .
			"From: " . apply_filters('wp_mail_from', "wordpress@" . preg_replace('#^www\.#', '', strtolower($_SERVER['SERVER_NAME']))) . "\n" . 
			"Content-Type: text/plain; charset=\"" . get_option('blog_charset') . "\"\n";
	}

	$phpmailer->ClearAddresses();
	$phpmailer->ClearCCs();
	$phpmailer->ClearBCCs();
	$phpmailer->ClearReplyTos();
	$phpmailer->ClearAllRecipients();
	$phpmailer->ClearCustomHeaders();

	$phpmailer->FromName = "WordPress";
	$phpmailer->AddAddress("$to", "");
	$phpmailer->Subject = $subject;
	$phpmailer->Body    = $message;
	$phpmailer->IsHTML(false);
	$phpmailer->IsMail(); // set mailer to use php mail()

	do_action_ref_array('phpmailer_init', array(&$phpmailer));

	$mailheaders = (array) explode( "\n", $headers );
	foreach ( $mailheaders as $line ) {
		$header = explode( ":", $line );
		switch ( trim( $header[0] ) ) {
			case "From":
				$from = trim( str_replace( '"', '', $header[1] ) );
				if ( strpos( $from, '<' ) ) {
					$phpmailer->FromName = str_replace( '"', '', substr( $header[1], 0, strpos( $header[1], '<' ) - 1 ) );
					$from = trim( substr( $from, strpos( $from, '<' ) + 1 ) );
					$from = str_replace( '>', '', $from );
				} else {
					$phpmailer->FromName = $from;
				}
				$phpmailer->From = trim( $from );
				break;
			default:
				if ( $line != '' && $header[0] != 'MIME-Version' && $header[0] != 'Content-Type' )
					$phpmailer->AddCustomHeader( $line );
				break;
		}
	}

	$result = @$phpmailer->Send();

	return $result;
}
endif;
Aber wo übergebe ich jetzt den "-f email@domain.de"-Parameter?

Am liebsten wäre mir natürlich, dass ich die Mailadresse nicht direkt in die php-Datei schreiben muss, sondern er sie sich aus der Variable, die ich unter Einstellungen>Allgemein angegeben habe, holt.
__________________
Meine WP-Blogs: SimulationsRaum | F.LM - Texte zum Film
F.LM ist offline   Mit Zitat antworten
Alt 08.08.2007, 06:57   #5 (permalink)
PostRank: 3
 
Registriert seit: 24.07.2005
Beiträge: 136
Kann mir da niemand helfen?
__________________
Meine WP-Blogs: SimulationsRaum | F.LM - Texte zum Film
F.LM ist offline   Mit Zitat antworten
Alt 08.08.2007, 09:56   #6 (permalink)
PostRank: 10
 
Benutzerbild von Putzlowitsch
 
Registriert seit: 21.10.2006
Beiträge: 2.101
Mal wieder ein Fall für die my-hacks.php
Also im WP-Wurzelverzeichnis eine Datei 'my-hacks.php' anlegen, falls nicht schon vorhanden, und folgendes reinschreiben:
PHP-Code:
<?php
  
function plw123_phpmailer_init$phpmailer ){
        
$phpmailer->Sender get_option'admin_email' );
    }
  
add_action'phpmailer_init''plw123_phpmailer_init' );
?>
Nun noch unter Einstellungen -> Allgemeines die Option
[x] Die veraltete my-hacks.php-Datei unterstützen.
aktivieren und freuen

Gut ich habe das jetzt nicht konkret mit HostEurope getestet, aber die Option "-f absender@example.com" wird nur dann gesetzt, wenn im $phpmailer-Objekt auch der Wert für "Sender" gesetzt ist. Und genau das machen die drei Zeilen Code da oben.

Und die Admin-Mail-Adresse muß natürlich eine bei HostEurope im entsprechenden Paket vorhandene E-Mail-Adresse sein.

Gruß
Ingo
__________________
putzlowitsch.de WP 2.1.3 bei All-Inkl und Strato (schnurpsel.de)
Putzlowitsch ist offline   Mit Zitat antworten
Alt 19.08.2007, 23:51   #7 (permalink)
PostRank: 3
 
Registriert seit: 24.07.2005
Beiträge: 136
Danke. Das habe ich mal eingesetzt. Danach ließ sich allerdings der TinyMCE-Editor nicht mehr starten und ich musste die Postings im HTML-Modus eingeben. Außerdem hat der RSS-Feed für die Kommentare nicht mehr funktioniert. Ich hab das daher mal wieder deaktiviert.
__________________
Meine WP-Blogs: SimulationsRaum | F.LM - Texte zum Film

Geändert von F.LM (19.08.2007 um 23:55 Uhr).
F.LM ist offline   Mit Zitat antworten
Alt 20.08.2007, 00:10   #8 (permalink)
PostRank: 10
 
Benutzerbild von Putzlowitsch
 
Registriert seit: 21.10.2006
Beiträge: 2.101
Das ist allerdings sehr seltsam.
Steht denn in der my-hacks.php sonst noch was drin, außer meinen paar Zeilen? Wichtig ist auch, das vor dem <?php und nach dem ?> nichts weiter stehen darf, auch keine Leerzeichen oder Leerzeilen.
Hat das mit den E-Mails denn dann wenigstens funktioniert?

Gruß
Ingo
__________________
putzlowitsch.de WP 2.1.3 bei All-Inkl und Strato (schnurpsel.de)
Putzlowitsch ist offline   Mit Zitat antworten
Alt 21.08.2007, 07:46   #9 (permalink)
PostRank: 3
 
Registriert seit: 24.07.2005
Beiträge: 136
Nein, ich habe die Datei erst angelegt und somit stand nur der Code von dir drin.

Soweit, zu testen, ob der Mail-Versand funktioniert, bin ich nicht gekommen: Es handelt sich beim Mail-Versand nämlich um einen Newsletter, der nach dem Erscheinen neuer Beiträge verschickt wird. Neue Beiträge ließen sich aber - wie oben beschrieben - nicht verfassen, während die my-hacks.php aktiviert war.

Gibt es denn keine Möglichkeit, die Parameter-Übergabe direkt irgendwo im Code der WP-Installation einzuhacken?
__________________
Meine WP-Blogs: SimulationsRaum | F.LM - Texte zum Film
F.LM ist offline   Mit Zitat antworten
Alt 22.08.2007, 18:04   #10 (permalink)
PostRank: 10
 
Benutzerbild von Putzlowitsch
 
Registriert seit: 21.10.2006
Beiträge: 2.101
Sicher gibt es die auch, nur sollte man zunächst versuchen, einen "legalen" Weg zu gehen. Man kann das ganze aus der my-hacks.php auch in ein Plugin verpacken, dann würde es so aussehen:
PHP-Code:
<?php
/*
Plugin Name: 123 MailSender
Plugin URI: http://forum.wordpress-deutschland.org/konfiguration/18650-php-mail-und-hosteurope.html#post118619
Description: Setzt als Mailabsender die Admin-Mailadresse ein.
Author: Ingo Henze
Version: 0.10
Author URI: http://putzlowitsch.de/
*/ 

 
function plw123_phpmailer_init$phpmailer ){
   
$phpmailer->Sender get_option'admin_email' );
 }

 
add_action'phpmailer_init''plw123_phpmailer_init' );

?>
Hier als Download: plw123_mailsnd.zip

Gruß
Ingo
Angehängte Dateien
Dateityp: zip plw123_mailsnd.zip (437 Bytes, 26x aufgerufen)
__________________
putzlowitsch.de WP 2.1.3 bei All-Inkl und Strato (schnurpsel.de)

Geändert von Putzlowitsch (06.02.2008 um 10:15 Uhr).
Putzlowitsch ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist aus.
HTML-Code ist aus.
Trackbacks are aus
Pingbacks are aus
Refbacks are aus


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:32 Uhr.


Powered by vBulletin® Version 3.7.4 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.2.0 | Impressum | Ein Inpsyde.com Projekt