Danke, Sieger66 , du bist ein Experte und solche Dinge sind für dich selbstverständlich. Ich muss aber ein wenig vorsichtig sein mit solchen Änderungen in der .htaccess Datei. Ich fand die Lösung mit dem public-Ordner perfekt, wenn es mit Akeeba + Laragon funktioniert hätte. Da ich alles wieder rückgängig gemacht habe, habe ich jetzt das viel gelobte Plugin HTProtect installiert.
Public Ordner für Joomla
-
Stef -
15. Juni 2026 um 16:17 -
Erledigt
-
-
Sieger66 , du bist ein Experte ...
Nein, ich bin nur ein Laie der sich inzwischen recht gut mit Joomla auskennt!
... Ich muss aber ein wenig vorsichtig sein mit solchen Änderungen in der .htaccess Datei...
Du verwendest aber bedenkenlos zukünftig eine neue Erweiterung die eben dies auch macht:
...ich jetzt ...Plugin HTProtect installiert.
Im übrigen ist dies übrigens kein Plugin sondern eine Komponente:
ZitatHTProtect ist eine kostenlose Joomla-Komponente, die deine Seite mit wenigen Klicks absichert - vor allem über die zentrale .htaccess
aus:
website-bereinigung.de/blog/joomla-htaccess-basisverzeichnis-absichern-htprotect
Ob man auf einer "sauberen" öffentlich erreichbaren Joomla-Website eine derlei neue Erweiterung installiert sollte man sich meiner Meinung nach durchaus gut überlegen und abwägen ob der mögliche Sicherheitsgewinn tatsächlich das mögliche zusätzliche Sicherheitsrisiko rechtfertigt...
Gebaut mit Kaffee & Claude 🤖
Inbesondere da es auch einfache Möglichkeiten gibt in der .htaccess entsprechende Eintragungen zu ergänzen, wie bereits erläutert...
-
Vielen Dank Sieger66 , und auch an SniperSister , firstlady dass du nochmals geantwortet hast. Es hat mich motiviert, meine .htaccess nach deiner Anleitung anzupassen.
HTProtect habe ich deinstalliert.
#4
OK, den ganzen Code eingefügt und die Zeile "...api\/index" gelöscht.#11
Passwortschutz + MultiFaktor mit Proton, habe ich schon immer.#12
Wie und wann soll ich das wissen und bemerken?#4
ACHTUNG WICHTIG!"Oder auch wenn du z.B. die kickstart.php umbenannt hast."
Sollte ich ein Akeeba zurückspielen, muss ich jedes Mal die .htaccess ändern? Oder ich kann jetzt schon die Zeile einfügen?
...
RewriteCond %{REQUEST_URI} !^/kickstart\.php$
RewriteCond %{REQUEST_URI} !^/backstef\.php$
... -
#12
Wie und wann soll ich das wissen und bemerken?Kannst du selbst an vorhandenen Fehlern bemerken wenn eine Joomla-Erweiterung nicht wie erwartet funktioniert. Dann z.B. bei Firefox unter Extras -> Browser Werkzeuge -> Werkzeuge für Web-Entwickler den Tab Netzwerk wählen und anschließend die betroffene Website(mit dem Fehler) neu laden. Auf den Spaltenkopf "Status" klicken und anschließend alle Zeilen die nicht Status 200 haben prüfen bezüglich der Spalte Host und der Spalte Datei ob es sich gegebenenfalls um eine korrekte Datei einer Joomla-Erweiterung handelt die einen sog. „Direktaufruf“ benötigt.
Das selbe obige vorgehen ist übrigens auch bei Verwendung der HTProtect-Erweiterung erforderlich um derlei notwendige Dateipfade und Dateien von verwendeten Joomla-Erweiterungen zu ermitteln. Daher einige Dateien mit Dateipfade sind auch dort zu finden wie z.B.:
...Ergänzung: Laut EventGallery Demo müsstest du
components/com_eventgallery/helpers/image.php
eintragen bei den Einzeldatei-Freigaben.aus:
HTProtect - schnelle Erste Hilfe für und gegen gehackte Joomlas
#4
ACHTUNG WICHTIG!"Oder auch wenn du z.B. die kickstart.php umbenannt hast."
Sollte ich ein Akeeba zurückspielen, muss ich jedes Mal die .htaccess ändern? Oder ich kann jetzt schon die Zeile einfügen?
Ja, aber wenn du ein Akeeba Backup zurückspielen möchtest sollte man ohnehin den Dateiordner z.B. zuerst komplett leeren , womit gegebenenfalls auch vorhandener Schadcode in der .htaccess gelöscht würde .
Alternativ einen neuen leeren Dateiordner verwenden und per Subdomain korrekt verwenden und nach dem erfolgreichem Restore bzw. diesen Dateiordner später für die eigentliche Domain verwenden.
In beiden Fällen würde ich anschließend zuerst eine entsprechend vorbereitete .htaccess in diesen leeren Dateiordner kopieren die einen Passwortschutz beinhaltet bzw. verwendet. Gegebenenfalls kannst du dazu einfach die entsprechende .htaccess kopieren bzw. verwenden die du für den administrator-Dateiordner bereits entsprechend verwendest...
-
OK, danke Sieger66
Ich habe mal ein Backup in Laragon installiert und alles lief wie üblich, kickstart.php habe ich umbenannt, kein Problem.
Da ich motiviert war, habe ich mich vom JCE + JCE Pro verabschiedet und werde mit dem TinyMCE weitermachen. Mein geschätztes Flexbox von JCE Pro werde ich mit Bootstrap ersetzen und auch "Bilder Popup Links" mit Modal von Bootstrap.
-
Mein geschätztes Flexbox von JCE Pro werde ich mit Bootstrap ersetzen und auch "Bilder Popup Links" mit Modal von Bootstrap.
Ganz genau, so ging es mir auch. Ich hing nur am JCE aus Bequemlichkeit fest um meine Seite auf Bootstrap umzustellen. Ich hatte einen sehr langen Artikel, mit Auflistungen von Königen und König im Reitsport. Alles mit den JCE eigenen Zellen Formatiert. Dann bin ich angefangen, alles von Hand in Bootstrap umzuschreiben, und immer wieder 'div' Fehler gehabt. Und dann kam Codex: Codex hat meinen bestehenden Content genommen, alles sauber aufgeteilt und in Bootstrap formatiert, eine SQL Anweisung dazu geschrieben und dann habe ich über 150 Beiträge in weniger als einer Sekunde in phpMyAdmin importiert, alles sauber formatiert, ohne Fehler.
Wie gesagt, man kann die KI finden wie man will, aber dieser ganze Fleißkram lasse ich nur noch dadurch erstellen. Das sind mir die 23 Euro / Monat wert

-
Ich hatte früher JCE weil es bei der Dateiverwaltung wirklich viel komfortabler war.
Die Redakteure der Seite haben dann Hunderte Beiträge mit Tabellen aufgebaut, dafür war der JCE echt bequemer.
Dann habe ich den JCE entfernt, sie wollten auch die PRO Variante nicht mehr zahlen -und habe auf Tiny umgestellt.
Eine kleine Schulung gemacht, und keine einzige Beschwerde bekommen. Der Tiny ist ja auch immer besser geworden; -
Moin Moin,
also jetzt mal ein kurzes Feedback von meinem Ausflug zum public Ordner:
Die Umstellung ging anhand der Anleitung von bembelimen hier: https://wicked-software.de/de/blog/joomla…ndlich-zumachen sehr einfach und schnell. Mein Hoster all-inkl. unterstützt die notwendigen Vorraussetzungen, also ssh und symlink. Stef: Deswegen kann diese Möglichkeit unter Laragon / Windows nicht funktionieren, weil Windows kein symlink kennt, sondern nur Verknüpfung. Macht zwar das gleiche, ist bei Linux jedoch etwas anders: https://www.freecodecamp.org/news/symlink-t…-symbolic-link/
Naja, ich hatte noch ein J!6.1.3 zum rumdaddeln, die habe ich zuerst zum Spaß auf 6.2.0 Beta 1 geupdatet (lief gut durch). Dann via ssh auf den Server und hier das Script durchlaufen lassen. In der Anleitung gibt es einen Punkt:
ZitatJoomla erzeugt damit automatisch die benötigte Struktur für den Public Folder. Du wirst gefragt, wie der Ordner heißen soll – ich empfehle public oder web, aber das ist Geschmackssache.
da musste der ganze Pfad rein, also irgendwas mit var/www/html/benutzername oder was immer bei eurem Server der absolute Pfad ist.
Script hat 1 Sekunde gebraucht, fertig. Dann rein ins Backend, ging alles wunderbar, und direkt mal Easy Joomla Backup installiert, das Backup Tool von Kubik-Rubik -> Backup ausgeführt, lief ohne Probleme durch. Auch die anderen Tools zeigten ersteinmal keine Auffälligkeiten. Außer HTprotect, was systembedingt ja ziemlich tief im System steckt, hatte Probleme beim Scanner, dem htaccess Schutz etc. Das habe ich kitepascal direkt im Forum gemeldet. Hier denke ich mal, sind einige Anpassungen notwendig. Was natürlich auch nicht mehr da ist, ist der Backend Schutz, da im neuen Verzeichnis /public/administrator die entsprechende htaccess und htpasswd Datei fehlt.Naja, ein ungetestetes Backup ist kein Backup, also fix eine neue Testinstanz samt Datenbank aufgemacht, und das Backup zurück gespielt. Es lief durch, jedoch waren plötzlich diverse Ordner unter public/ zusätzlich vorhanden: api/, files/ media etc.
Vorher:
Nachher:
Also hier sind sicherlich auch noch weitere Anpassungen notwendig.
Fazit: Eine coole und eigentlich recht einfach umzusetzende Maßnahme, jedoch ist die Unterstützung und das handling dazu noch nicht überall gegeben. ich werde das weiter beobachten, aber zur zeit ist die Nutzung des public Ordners noch ein Abenteuer

-
Danke fürs Testen. Ein paar Kommentare, die vielleicht helfen:
Moin Moin,
also jetzt mal ein kurzes Feedback von meinem Ausflug zum public Ordner:
Stef: Deswegen kann diese Möglichkeit unter Laragon / Windows nicht funktionieren, weil Windows kein symlink kennt, sondern nur Verknüpfung.
Windows kann sogenannte "junctions", die sind fast wie Symlinks. Es gibt hier auch ein Tool für: https://schinagl.priv.at/nt/hardlinkshe…lextension.html
Was natürlich auch nicht mehr da ist, ist der Backend Schutz, da im neuen Verzeichnis /public/administrator die entsprechende htaccess und htpasswd Datei fehlt.
Du kannst ganz normal in deinem public-Folder htaccess Schutzt fürs Backend einrichten. Auch das Frontend hat eine htaccess, die du mit z.B. Caching etc. bestücken kannst.
Fazit: Eine coole und eigentlich recht einfach umzusetzende Maßnahme, jedoch ist die Unterstützung und das handling dazu noch nicht überall gegeben. ich werde das weiter beobachten, aber zur zeit ist die Nutzung des public Ordners noch ein Abenteuer

Wichtig ist, dass man vorher prüft ob Extensions (besonders Templates bzw. Template-Frameworks) manchmal immer noch ihre Assets aus dem Template-Ordner laden statt sauber aus "media". Da muss man den entsprechenden Ordner noch mit symlinken.
-
Außer HTprotect, was systembedingt ja ziemlich tief im System steckt, hatte Probleme beim Scanner, dem htaccess Schutz etc. Das habe ich kitepascal direkt im Forum gemeldet. Hier denke ich mal, sind einige Anpassungen notwendig. Was natürlich auch nicht mehr da ist, ist der Backend Schutz, da im neuen Verzeichnis /public/administrator die entsprechende htaccess und htpasswd Datei fehlt.
Es klappt nun alles - ab 2.7.0 wird der Public Folder Modus vollständig unterstützt (Changelog).
Auch neu ist die Cookie-basierte /administrator Absicherung in Anlehnung an
Administrator-Verzeichnis per htaccess schützen
als beste Alternative zum klassischen .htpasswd für alle, die keinen doppelten Login möchten. /administrator liefert so direkt einen 404 und ist für Fremde somit nicht vorhanden - im Grunde dieselbe Idee wie beim Public Folder Modus: nach außen nur zeigen, was nach außen gehört.
-