Typo3 mit Systemlinks ohne Shellzugang installieren

Warum TYPO3 mit Systemlinks?

Für die richtige Installation von Typo3 wird ein Zugang zum Server per SSH benötigt. Hier zeige ich euch wie ihr TYPO3 mit Systemlinks ohne SSH installieren könnt. Manche Hoster bieten diesen erst ab einen bestimmten Webpaket an und ein eigener Server lohnt sich oftmals nicht für eine einzige Webseite. Auch bei der so genannten „1 Klick Installation“ mancher Anbieter ist das CMS eher selten zu finden.

Es bleibt für die Installation oft nur der Download von Typo3, das Entpacken und Hochladen der Dateien per FTP und die manuelle Installation. Das bringt einen entscheidenden Nachteil: Die automatischen Updates funktionieren nur, wenn es mit Systemlinks installiert worden ist.

Ohne Shellzugang ist dies aber in der Regel nicht möglich.

Und wie mache ich das nun?

Ich zeige euch eine Möglichkeit, Typo3 per Script zu installieren. Dazu müsst ihr nur eine Datei per FTP in das gewünschte Verzeichnis kopieren und diese im Browser aufrufen – der Rest geht von allein. Am Schluss erhaltet ihr eine saubere Installation die sich mühelos im Installer updaten lässt.

Als erstes müssen das Paket auf den Server laden und dort entpacken:

exec(‚wget ncu.dl.sourceforge.net/project/typo3/TYPO3 %20Source%20and%20Dummy/TYPO3%206.2.12/typo3_src-6.2.12.tar.gz‘);
exec(‚gunzip typo3_src-6.2.12.tar.gz‘);
exec(‚tar -xf typo3_src-6.2.12.tar‘);

Nun haben wir im Verzeichnis die *.tar Datei und ein Verzeichnis mit dem Namen ‚typo3_src-6.2.12‘. Die *.tar Datei kann problemlos gelöscht werden und das Verzeichnis benennen wir in ‚typo‘ um.

exec(‚rm typo3_src-6.2.12.tar‘);
exec(‚mv typo3_src-6.2.12 typo‘);

Jetzt haben wir schon einmal die Basis für die Installation geschaffen, wir wollen aber eine Installation mit Systemlinks erstellen. Dieses erreichen wir mit diesen Code:

$newTypo3Source = ‚typo‘; unlink(‚typo3_src‘);
symlink($newTypo3Source, ‚typo3_src‘);
unlink(‚typo3‘);
symlink(‚typo3_src/typo3‘, ‚typo3‘);
unlink(‚index.php‘);
symlink(‚typo3_src/index.php‘, ‚index.php‘);

Auch wenn eine neue Version in der Zwischenzeit erschienen ist, braucht das Script nicht geändert zu werden. Ihr geht einfach in das Install Tool und macht ein Core-Update. Dann wisst Ihr auch gleich, ob sich irgendwo ein Fehler eingeschlichen hat.