Symlinks ohne Shell mit PHP erstellen

Symlinks in der Shell
Symlinks, auch Symbolic Link oder Softlink genannt, sind Verknüpfungen welche auf andere Ordner oder Dateien referenzieren. Auf vielen Servern verweist beispielsweise ein Symlink www auf das Verzeichnis public_html. Dies ist in unserem Titelbild zu sehen. Die Symlinks sind farblich markiert und keine herkömmlichen Verzeichnisse, wie man am fehlenden / erkennen kann. Üblicherweise werden Symlinks über eine Shell wie SSH verwaltet. Zum Erstellen eines Symlinks muss folgender Code in der Shell eingegeben werden:

ln -s [pfad/zum/ziel] [pfad/zum/symlink]

Um einen bestehenden Symlink zu überschreiben kann die Option -f genutzt werden:

ln -sf [pfad/zum/ziel] [bestehender/symlink]

Um das Ziel eines Links auszugeben, wird folgender Befehl benötigt:

readlink [bestehender/symlink]

Auch möglich ist es in der Shell alle Dateien über ls anzuzeigen und über die Option -l das lange Listenformat auszugeben:

ls -l

In der Ausgabe werden dann direkt auch die jeweiligen Ziele der Symlinks angezeigt.

Symlinks via PHP erstellen

Allerdings gewährt nicht jeder Hoster SSH-Zugriff auf seine Server. Hier kann man sich einer einfachen PHP-Funktion behelfen:

<?php symlink ( "pfad/zum/ziel", "pfad/zum/symlink" ); ?>

Auch hier lässt sich das Ziel des Links ausgeben:

<?php echo readlink ( "pfad/zum/symlink" ); ) ?>

Um den Code auszuführen, muss einfach die PHP-Datei über den Browser aufgerufen werden. Somit können also relativ einfach Symlinks auch ohne SSH-Zugang erstellt werden.

Falls Sie weitere Erfahrungen oder auch Fragen hierzu haben, hinterlassen Sie gerne einen Kommentar.

Schreiben Sie einen Kommentar

Ihre E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.