![](https://seccdn.libravatar.org/avatar/2db632c5581e46800ea1dfe8de5d45cb.jpg?s=120&d=mm&r=g)
Am Montag, 27. März 2023, 08:22:38 CEST schrieb Jörg Thümmler:
Am 24.03.23 um 15:09 schrieb Bjoern Voigt:
On 24.03.23 13:04, Jörg Thümmler wrote:
kennt sich jemand mit den Interna des Apachen bei Symbolischen Links aus? Ich habe eine Anwendung, die über einen system($command)-Befehl aus php heraus gestartet wird (eine DB-Abfrage, kein SQL). Die DB hat einen Lizenzzähler, der hardcoded in /usr/tmp liegt. Seit leap 15.x gibt es das nicht mehr, es ist jetzt ein Symlink auf /var/tmp. Obwohl ich für das entsprechende Verzeichnis "Options FollowSymLinks" gesetzt habe, meckert das php im Apachen den Lizenzzähler als "not found" an. Führe ich das Script manuell im entsprechenden Verzeichnis aus, findet er den Zähler ohne Probleme.
Wie kann ich dem Apachen beibringen, dem Link in /usr zu /var/tmp zu folgen? In der Version 2.2 scheint das funktioniert zu haben, zumindest kann ich mich nicht erinnern, dafür Krämpfe gemacht zu haben...
PHP interessiert sich für die FollowSymLinks-Option von Apache nicht. PHP kann teilweise auf bestimmte Verzeichnisse nicht zugreifen, wenn die open_basedir-Option in /etc/php8/apache2/php.ini gesetzt ist.
Für die Fehlersuche ist es manchmal sinnvoll, die php-Skripte manuell zu starten:
sudo -u www-data bash cd /srv/www/htdocs/<Ziel> php phpskript.php
Björn
Hi,
die kannte ich noch nicht... ist aber nicht gesetzt. Mit sudo funzt das Script auch... trotzdem natürlich Danke, kann gut sein, dass das woanders mal aufschlägt...
ich werde wohl einen wrapper in c schreiben, der mir das so aufruft, wie es läuft und hoffen, das der nicht zuviele Ressourcen frisst, wenn er alleweil gucken muss, ob eine Abfragedatei da ist...
Hallo, vielleicht liegt es am privaten tmp-Verzeichnis von systemd? Das erstellt ja bspw. für den Apache jeweils ein privates Verzeichnis in /var/tmp und /tmp und blendet es dann für den Dienst in das Dateisystem ein. Der Apache sieht dann nicht das eigentliche /var/tmp sondern den Inhalt von bspw. /var/tmp/systemd- private-abcdefghijklmnopqrstuvwxyz123456-apache2.service-abcdef/ als /var/tmp. Viele Grüße Matthias -- Das Gesetz hat zum Schneckengang verdorben, was Adlerflug geworden wäre. (Friedrich Schiller - Die Räuber) Und der Buschfunk spielt gerade mal nichts...