Hallo,
meine Magento-Installation versendet keine Emails. Ich vermute, dass irgendwas mit den Cronjobs nicht richtig konfiguriert ist.
(AOE Scheduler ist installiert)
Wenn ich die cron.sh ausführe, erhalte ich folgende Fehlermeldung:
<b>Parse error</b>: syntax error, unexpected T_OBJECT_OPERATOR in <b>/homepages/8/d85143610/htdocs/magento_souvenirs/cron.php</b> on line <b>42</b><br />
Ich vermute also, der Fehler ist in der cron.php-Datei; Zeile 42:
Mage::app('admin')->setUseSessionInUrl(false);
Hier die Datei gesamte cron.php:
========================================================
<?php
/**
* Magento
*
* NOTICE OF LICENSE
*
* This source file is subject to the Open Software License (OSL 3.0)
* that is bundled with this package in the file LICENSE.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/osl-3.0.php
* If you did not receive a copy of the license and are unable to
* obtain it through the world-wide-web, please send an email
* to license@magentocommerce.com so we can send you a copy immediately.
*
* DISCLAIMER
*
* Do not edit or add to this file if you wish to upgrade Magento to newer
* versions in the future. If you wish to customize Magento for your
* needs please refer to http://www.magentocommerce.com for more information.
*
* @category Mage
* @package Mage
* @copyright Copyright (c) 2008 Irubin Consulting Inc. DBA Varien (http://www.varien.com)
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
*/
// Change current directory to the directory of current script
chdir(dirname(__FILE__));
require 'app/Mage.php';
if (!Mage::isInstalled()) {
echo "Application is not installed yet, please complete install wizard first.";
exit;
}
// Only for urls
// Don't remove this
$_SERVER['SCRIPT_NAME'] = str_replace(basename(__FILE__), 'index.php', $_SERVER['SCRIPT_NAME']);
$_SERVER['SCRIPT_FILENAME'] = str_replace(basename(__FILE__), 'index.php', $_SERVER['SCRIPT_FILENAME']);
Mage::app('admin')->setUseSessionInUrl(false);
umask(0);
$disabledFuncs = explode(',', ini_get('disable_functions'));
$isShellDisabled = is_array($disabledFuncs) ? in_array('shell_exec', $disabledFuncs) : true;
$isShellDisabled = (stripos(PHP_OS, 'win') === false) ? $isShellDisabled : true;
try {
if (stripos(PHP_OS, 'win') === false) {
$options = getopt('m::');
if (isset($options['m'])) {
if ($options['m'] == 'always') {
$cronMode = 'always';
} elseif ($options['m'] == 'default') {
$cronMode = 'default';
} else {
Mage::throwException('Unrecognized cron mode was defined');
}
} else if (!$isShellDisabled) {
$fileName = basename(__FILE__);
$baseDir = dirname(__FILE__);
shell_exec("/bin/sh $baseDir/cron.sh $fileName -mdefault 1 > /dev/null 2>&1 &");
shell_exec("/bin/sh $baseDir/cron.sh $fileName -malways 1 > /dev/null 2>&1 &");
exit;
}
}
Mage::getConfig()->init()->loadEventObservers('crontab');
Mage::app()->addEventArea('crontab');
if ($isShellDisabled) {
Mage::dispatchEvent('always');
Mage::dispatchEvent('default');
} else {
Mage::dispatchEvent($cronMode);
}
} catch (Exception $e) {
Mage:rintException($e);
exit(1);
}
========================================================
Ach ja, auf dem Server ist PHP-Version 5.4 eingestellt (1und1-Server)
Kann mir jemand weiterhelfen?
Gruß
Stefan
Hi
wie führst du denn dein Crontab bei 1und1 aus ?
Sieht der in etwa so aus?
* * * * * /usr/bin/php5.4-cli /direkter Pfad zur Magento Installation/cron.php -q
Der Fehler deutet auf ein Problem mit dem PHP Interpreter hin. Nutze mal diesen aus der Beispielcodezeile
Gruß Stephan
Kommentiere mal in der cron.sh die Zeile 14 aus:
#PHP_BIN=`which php`
und setze folgende Zeile mal darunter:
PHP_BIN="/usr/bin/php5.4"
1und1 ist da etwas komisch, aber nach etwas herumprobieren konnte ich das Problem auf unserem Server damit lösen. Vielleicht hilft es dir
Gruß Stephan
Topic has been moved to the German forum.
Ich muss ehrlich sagen dass ich länger schon nicht mehr die cron.sh benutzt habe.
Ich verwende immer nur die cron.php
siehe:
https://www.maxanoo.com/magento-verschickt-keine-email/
damit sollte es klappen
Hallo Stephan,
vielen Dank dein Tipp hat geholfen. Die Cron-Jobs laufen jetzt.
Allerdings werden Emails noch immer nicht versendet.
Anscheinend hab ich da was nicht richtig konfiguriert. Ich nutze die SMTP Pro Email Extension.
Hab da folgende Einstellungen gemacht:
Email Connection: custom smtp
Authentication: Anmelden
Username, Passwort: .....
Server: smtp.1und1.de
Port: 587
SSL Security: No SSL
Wenn ich den Selbsttest ausführe bekomme ich die Fehlermeldung
".....
Your connection to the SMTP server timed out. Please check with your host that outbound SMTP connections are allowed as this error is most commonly caused when a host blocks outbound connections. This is probably not a bug, please do not email extension support until you have checked with your server admin or host.
Default templates exist.
Email communications are enabled.
Required database tables exist.
Testing failed, ....."
Gruß
Stefan
hallo
naja, damit ist das problem schonmal etwas eingegrenzter.
sind sie sich sicher dass der 1und1 server unverschlüsselte smtp verbindungen akzeptiert?
ich habe hier folgendes gefunden:
Postausgangsserver (SMTP) | smtp.1und1.de | |
Port für SSL | 465 | |
TLS/STARTTLS | 587 (alternativ 25) |
Unverschlüsselte verbindungen sollten doch sehr vermieden werden.
Vielleicht ist das ja schon alles
Um mir das ganze Theater mit den Cronjobs zu ersparen setze ich bei mir die Extension SMTP Pro ein
http://www.magentocommerce.com/magento-connect/smtp-pro-email-free-custom-smtp-email.html
Ist eine kostenlose Erweiterung, kann auch verschlüsselt SMTP und funktioniert in meinem Fall hervorragend mit GMail.
Queue Usage auf "Niemals" setzen und alles läuft.
Hallo Sebastian_keutm,
hab bereits alles probiert. Verschlüsselt und unverschlüsselt. Versch. Ports eingesetzt. Aber funktioniert leider nicht.
Gruss Stefan
Hallo XSized,
danke für den Tipp. Auch ich hab die SMTP-Pro Extension installiert.
Aber auch dazu werden doch die Emails dann über den Cronjob versendet, oder verstehe ich das falsch.
Blöderweise funktioniert der Selbsttest dieser XTension bei mir auch nicht. Weder mit GMail noch mit 1und1.
Gruss
Stefan