lpr-Befehl aus PHP-Skript

Status
Für weitere Antworten geschlossen.

alexanders

Benutzer
Mitglied seit
07. Feb 2011
Beiträge
8
Punkte für Reaktionen
0
Punkte
0
Hallo Forum

Ich versuche derzeit, eine Webseite zu erstellen, die schliesslich entfernes Drucken von der Diskstation aus erlaubt - vom Prinzip her ähnlich wie Google Cloud print, allerdings mit eingeschränktem Funktiosumfang und ohne, dass ich alle Dokumente erst an die Google-Server schicken muss. Der user soll also PDF-Files auf der Weboberfläche hochladen und schliesslich mit einem Klick alle hochgeladenen Dokumente ausdrucken können. Die verarbeiteten Files werden danach gelöscht (lpr ... -r ...).
Der Upload des PDFs steht, den entsprechenden lpr-Befehl kann ich mit root-Login aus der shell ebenfalls absetzten (und der funktioniert aus). Wenn ich denselben Befehl aber aus dem PHP-Code absetzen will (shell_exec() bzw. exec()), funktioniert der Ausdruck nicht. Ich vermute Rechteprobleme des Users nobody. Shell-Zugriff des Apache-Users würde ich aus Sicherheitsüberlegungen gerne vermeiden...

Hat jemand eine Idee, wie dieses Problem zu lösen ist? Oder einen komplett anderen Ansatz, wie ich an entferntes Drucken rangehen sollte?
Ich arbeite auf einer DS211+ mit DSM 4.3-3810 Update 3

Jedwelche Lösungsansätze werden sehr geschätzt - vielen Dank zum Voraus!

Grüsse,
Alex
 

fpo4711

Benutzer
Mitglied seit
26. Mai 2010
Beiträge
2.772
Punkte für Reaktionen
1
Punkte
0
Hallo alexanders,

ich möchte Dir nur zwei Stichworte mitgeben, damit Du dich ein wenig mit der Thematik auseinandersetzen kannst.

open_basedir und safe_mode

Shellzugriff vom Webserver sollte sehr bedacht ausgeführt werden.

Gruß Frank
 

alexanders

Benutzer
Mitglied seit
07. Feb 2011
Beiträge
8
Punkte für Reaktionen
0
Punkte
0
Danke Frank für die Stichworte.

Ich bin natürlich auf meiner bisherigen Recherche ebenfalls schon mehrfach über diese Thematik gestolpert, weshalb ich auch schrieb, dass ich kompletten Shell-Zugriff des User-Apachen lieber umgehen möchte. Wie aber kann ich denn den Druckbefehl sonst absetzen? Ich gehe davon aus, dass der alleinige Aufruf eines Skripts, welches den entsprechenden Code beinhaltet, kaum Abhilfe schaffen würde..!?
Idealerweise suche ich eine Variante, in der ich den safemode auf der DS eingeschaltet lassen kann. Ist dies nicht möglich, werde ich diesen Dienst wohl auf den Apachen des Raspberry Pi auslagern müssen...

Lösungsvorschläge sind weiterhin willkommen, Stichwörter natürlich ebenso ;)

Grüsse,
alex
 
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