Aufruf PHP-script per automatisiertem Auftrag (Aufgabenplaner) funktioniert nich

  • Ab sofort steht euch hier im Forum die neue Add-on Verwaltung zur Verfügung – eine zentrale Plattform für alles rund um Erweiterungen und Add-ons für den DSM.

    Damit haben wir einen Ort, an dem Lösungen von Nutzern mit der Community geteilt werden können. Über die Team Funktion können Projekte auch gemeinsam gepflegt werden.

    Was die Add-on Verwaltung kann und wie es funktioniert findet Ihr hier

    Hier geht es zu den Add-ons

Status
Für weitere Antworten geschlossen.

Stefan!

Benutzer
Registriert
21. Dez. 2013
Beiträge
65
Reaktionspunkte
0
Punkte
6
Hallo,
script durch Aufruf mit Browser funktioniert problemlos

per automatisiert ausgelöstem Auftrag ... leider nicht
wget https://192.168.178.44/cm/einlesen.php --no-check-certificate

==> permission denied ...

es liegen aber im Verzeichnis der PHP-Datei Schreib und Leserechte vor (für den Besitzer des Auftrages)

auf neu aufgesetzte DS720+, software aktuell

hat problemlos auf DS214+ funktioniert ... allerdings musste ich dort nicht --no-check-certificate angeben
Leide komme ich nicht auf die Oberfläche von DS214+ um zu vergleichen, was dort anders eingestellt ist

Sehr geehrter Benutzer, Aufgabenplaner hat eine geplante Aufgabe abgeschlossen. übermittelt folgende Fehlermeldung

Sehr geehrter Benutzer,
Aufgabenplaner hat eine geplante Aufgabe abgeschlossen.
Aufgabe: cm
Startzeit: Fri, 07 May 2021 11:47:57 GMT
Stoppzeit: Fri, 07 May 2021 11:47:59 GMT
Aktueller Status: 3 (Unterbrochen)
Standardausgabe/Fehler:
--2021-05-07 11:47:57-- https://192..../cm/einlesen.php
Connecting to 192.1...:443... connected.
WARNING: cannot verify 192.1...'s certificate, issued by 'CN=Synology Inc. CA,O=Synology Inc.,L=Taipei,C=TW':
Unable to locally verify the issuer's authority.
WARNING: certificate common name 'synology' doesn't match requested host name '192.1....'.
HTTP request sent, awaiting response... 200 OK
Length: unspecified [text/html]
einlesen.php: Permission denied

Cannot write to 'einlesen.php' (Success).

Wo muß ich suchen?
es scheint an den Rechten zu liegen
Die Datei einlesen.php wird eigentlich nur gelesen ... im selben Verzeichnis dann aber durch das php script Ascii-Dateien generiert ... das scheint aber ein Problem zu sein

... nicht mit dem Browser .... da klappt das


Danke für einen Hinweis!
 
script durch Aufruf mit Browser funktioniert problemlos
Das bezweifle ich. Mit der IP in der URL? Dein Zertifikat ist bestimmt nicht für die IP ausgestellt, sondern für einen Namen ;)
 
ja, das funktioniert ... wenn ich den link, der vom Auftrag erstellten eMail die versendet wird ... https://192..../cm/einlesen.php ...anclicke ... wird der browser gestartet und das php script wird gestartet und erzeugt eine Datei im selben Verzeichnis wie die PHP-Datei

..browser reklammiert zwar als nicht vertrauenswürdig ... aber funktioniert

Per automatisiertem Auftrag ... passiert scheinbar nichts ... einlesen.php: Permission denied
 
....nicht vertrauenswürdig.... und Du klicks den "ist okay" Button?
...wer klickt im Script?
 
im eigenen internen netz ... wäre also vorübergehend ok
ich starte nur eine PHP-Datei die unter /WEB/xyz steht ....
entweder

a)
manuell per browser ... das klappt

oder
b)
automatisiert per Auftrag (das soll so stattfinden) ... das klappt aktuell nicht (das hatte problemlos auf der DS214+ funktioniert ... die wird gerade ersetzt durch 720+ .... leider komme ich nicht auf die Oberfläche der 214+ und kann nicht feststellen, ob irgendwie weitere Parameter bei wget fehlen oder welche Einstellungen sonst fehlen könnten
 
Schon mal probiert das Skript über HTTP laufen zu lassen? Dann logischerweise ohne "--no-check-certificate"
 
Problem gelöst:
Besitzer der Aufgabe auf root geändert

verstehe zwar nicht, warum das jetzt funktioniert und warum es nicht mit meinem user mit kompletten Schreib und Leserechten funktioniert ... aber hauptsache es funktioniert.

Danke für die Rückmeldungen!
 
Z.b. Mal /bin/env mit ausgeben lassen. Je nachdem als welcher User man sich per SSH einloggt oder scripte per Aufgabenplaner laufen lässt gelten unterschiedliche Umgebungsvariablen.

Könnte z.b sein dass anstatt wget einfach /usr/bin/wget angegeben werden muss oder ähnliches.

Bzw. Wenn wir oben bei den rechten sind, dass dein Benutzer nicht auf die Dateien des Webservers zugreifen darf, root aber schon.
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat