# Cronjob kann PHP-File nicht ausführen

**URL:** <https://forum.shopware.com/t/cronjob-kann-php-file-nicht-ausfuehren/103693>\
**Category:** Shopware 6 (German)\
**Created:** [12. April 2024 um 21:09 UTC](https://forum.shopware.com/t/cronjob-kann-php-file-nicht-ausfuehren/103693 "2024-04-12T21:09:41Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![Christmas](https://avatars.discourse-cdn.com/v4/letter/c/e274bd/32.png) [@Christmas](https://forum.shopware.com/u/Christmas)\
**Post date:** [12. April 2024 um 21:09 UTC](https://forum.shopware.com/t/cronjob-kann-php-file-nicht-ausfuehren/103693/1 "2024-04-12T21:09:41Z")

</div>

Hallo,

ich habe den Admin-Worker deaktiviert und stattdessen Cronjobs eingerichtet. Die Cronjobs bei meinem Hoster verweisen auf den relativen Pfad einer PHP-Datei, welche in /public liegt. Rufe ich die PHP-Datei mit [domain.de](http://domain.de)\scheduled\_task.php auf, wird sie ohne Probleme ausgeführt. Will allerdings der Cronjob meines Hosters diese Datei aufrufen und ausführen, wird folgende Fehlermeldung angegeben:

PHP Parse error: syntax error, unexpected ‚class‘ (T\_CLASS), expecting identifier (T\_STRING) or variable (T\_VARIABLE) or ‚{‘ or ‚$‘ in /var/www/vhosts/user.hoster.de/shopname/bin/console on line 24

Hat jemand eine Idee, was es damit auf sich hat? Die PHP-Dateien haben Berechtigung 755, das Console-File ebenfalls.

Gruß Christoph

---

<div class="post-metadata">

**Author:** ![drakon](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/drakon/32/7724_2.png) [@drakon](https://forum.shopware.com/u/drakon)\
**Post date:** [12. April 2024 um 21:17 UTC](https://forum.shopware.com/t/cronjob-kann-php-file-nicht-ausfuehren/103693/2 "2024-04-12T21:17:38Z")

</div>

Auf der Konsole läuft eine andere, meist eine ältere PHP-Version als auf dem Webserver.  
Entweder im Befehl die zu verwendende PHP-Version mit angeben oder global vom Provider umstellen lassen, falls man das nicht selbst in der System-Konfiguration kann.

---

<div class="post-metadata">

**Author:** ![Christmas](https://avatars.discourse-cdn.com/v4/letter/c/e274bd/32.png) [@Christmas](https://forum.shopware.com/u/Christmas)\
**Post date:** [12. April 2024 um 21:21 UTC](https://forum.shopware.com/t/cronjob-kann-php-file-nicht-ausfuehren/103693/3 "2024-04-12T21:21:02Z")

</div>

Danke für die schnelle Rückmeldung. Ich kann bei meinem Hoster bei der Cronjob-Erstellung die PHP-Version über ein Dropdown auswählen, welche genutzt werden soll. Sowohl für den Shop als auch den Cronjob werden PHP 8.2(.5) ausgeführt.

---

<div class="post-metadata">

**Author:** ![Max\_Shop](https://avatars.discourse-cdn.com/v4/letter/m/58f4c7/32.png) [@Max\_Shop](https://forum.shopware.com/u/Max_Shop)\
**Post date:** [14. April 2024 um 21:48 UTC](https://forum.shopware.com/t/cronjob-kann-php-file-nicht-ausfuehren/103693/4 "2024-04-14T21:48:43Z")

</div>

> [@Christmas](#):
>
> syntax error

kann eigentlich nur auf eine veraltete PHP-Version oder andere php.ini hindeuten, wie bereits @drakon darauf hingewiesen hat. Ansonsten würde der gleiche Fehler auch beim manuellen auftreten.

Sieht dein Script ungefähr so aus?

```auto
<?php
exec("/usr/bin/php82 /var/www/htdocs/bin/console scheduled-task:run --time-limit=60 --memory-limit=512M 2>&1", $out, $result);
echo "Returncode: " .$result ."<br>";
echo "Ausgabe des Scripts: " ."<br>";
echo "<pre>"; print_r($out);
?>

```

---

<div class="post-metadata">

**Author:** ![Christmas](https://avatars.discourse-cdn.com/v4/letter/c/e274bd/32.png) [@Christmas](https://forum.shopware.com/u/Christmas)\
**Post date:** [15. April 2024 um 11:07 UTC](https://forum.shopware.com/t/cronjob-kann-php-file-nicht-ausfuehren/103693/5 "2024-04-15T11:07:29Z")

</div>

Ich habe es jetzt als PHP ausführen lassen, der Cronjob ruft dazu den Link per direkter URL auf. Scheint so zu funktionieren, hoffe ich. Woran würde ich denn erkennen, wenn die Cronjobs nicht arbeiten würden? AdminWorker ist deaktiviert.

Ja, mein Code sieht nahezu so aus, hab nur die Echos entfernt.

---

<div class="post-metadata">

**Author:** ![Max\_Shop](https://avatars.discourse-cdn.com/v4/letter/m/58f4c7/32.png) [@Max\_Shop](https://forum.shopware.com/u/Max_Shop)\
**Post date:** [15. April 2024 um 16:30 UTC](https://forum.shopware.com/t/cronjob-kann-php-file-nicht-ausfuehren/103693/6 "2024-04-15T16:30:32Z")

</div>

.php musst du immer mit php ausführen. Nur bei .sh darfst du sh verwenden. Vermutlich war dies das Problem.

Die Messeges werden dann nicht abgearbeitet, keine E-Mails verschickt, etc. siehst du aber teils nur mit dem Frosh Tool Plugin.

---

<div class="post-metadata">

**Author:** ![Christmas](https://avatars.discourse-cdn.com/v4/letter/c/e274bd/32.png) [@Christmas](https://forum.shopware.com/u/Christmas)\
**Post date:** [15. April 2024 um 19:06 UTC](https://forum.shopware.com/t/cronjob-kann-php-file-nicht-ausfuehren/103693/7 "2024-04-15T19:06:43Z")

</div>

Das ist durchaus möglich. Ich hab mit dem Thema Cronjobs bisher kaum Berührungspunkte gehabt, aber danke für die Antworten.

---

<div class="post-metadata">

**Author:** ![system](https://europe1.discourse-cdn.com/flex013/uploads/shopware/original/3X/2/9/29c7587ba660f00e4995d1743162782e5d6d8653.svg) [@system](https://forum.shopware.com/u/system)\
**Post date:** [15. Mai 2024 um 19:07 UTC](https://forum.shopware.com/t/cronjob-kann-php-file-nicht-ausfuehren/103693/8 "2024-05-15T19:07:30Z")

</div>

Dieses Thema wurde automatisch 30 Tage nach der letzten Antwort geschlossen. Es sind keine neuen Antworten mehr erlaubt.
