Bilder für alle Subdomains von der Masterdomain

  • Hi Kämpfer

    ich habe eine Domain und 13 Subdomains, laufen alle unter 3.9.1 mit php 7.x.

    Speicherplatz habe ich genügend, nur das Dateilimit(250000) bereitet Kopfschmerzen. =O

    Daher möchte ich den Bereich Images für alle Zentralisieren.

    Ich bräuchte von Euch mal Denkanstöße, wie ich von allen Subdomains auf "master-domain/Images/…." zugreifen kann.

    Geht's überhaupt und wenn "Ja" wo muss ich gedanklich ansetzten ohne das System zu zerwürgen. hmm

    In den Core groß eingreifen möchte ich natürlich nicht.nono

  • Hmm mal schauen ob der alte Mann das hinbekommt.

    Ungefähr so wie unten in die index.php und bei jedem Update beginne ich ab "Guten Morgen", oder liege ich da gedanklich falsch hmm

    PHP
    1. <?php symlink('.../rid/../../52129103/htdocs/ksv23001/images', '...rid/../../52129103/htdocs/ksv23000/images'); ?>
  • Nun ja, schöne Idee ;) aber leider bin ich scheinbar zu dusselig pardon

    Unten stehendes in die index.php rein(FE/BE), Gebet sprechen und los. spiteful


    So wie ich es mir dachte geht's nicht und mit der Fehlermeldung im (FE/BE) bin ich etwas überfordert. pardon

    Denn mit dem Session-Handling kenne ich mich nicht aus fie

    Code
    1. symlink('/home/strato/http/premium/rid/../../52129103/htdocs/ksv23005/images/', '/home/strato/http/premium/rid/../../52129103/htdocs/ksv23000/images');
    2. ----------Fehler-------------------------
    3. Warning: symlink(): File exists in /mnt/web101/../../52129103/htdocs/ksv23005/index.php on line 44 Warning: session_name(): Cannot change session name when headers already sent in /mnt/web101/../../52129103/htdocs/ksv23005/libraries/joomla/session/handler/native.php on line 128 Warning: session_cache_limiter(): Cannot change cache limiter when headers already sent in /mnt/web101/../../52129103/htdocs/ksv23005/libraries/joomla/session/handler/native.php on line 235 Error: Failed to start application: Failed to start the session because headers have already been sent by "/mnt/web101/../../52129103/htdocs/ksv23005/index.php" at line 44.
  • Du musst zuvor den alten /images/-Ordner umbenennen, da ja der neu genrierte Symlink diesen Namen bekommen soll.

    Zitat

    Mal ne Frage an die htaccess Spezialisten, würde folgendes eventuell auch den Zweck erfüllen und funktionieren

    Nein. Aber wahrscheinlich, wenn du im rechten Teil noch die Mutter-Domain hinzufügst, wo die Bilder liegen:

    Code
    1. RewriteRule ^images/(.*)$ http://example.org/images/$1 [R=301,L]
  • Hallo,


    Bei Strato steht bei SymLinksIfOwnerMatch:

    Zitat

    Wenn aktiviert, folgt der Server nur symbolischen Links, bei denen die Zieldatei bzw. das Zielverzeichnis der gleichen Benutzerkennung gehört, wie der Link.

    Wenn deaktiviert, verbietet dies die Ausführung der Rewrite Engine (mod_rewrite).

    https://www.strato.de/faq/serv…-muss-ich-dabei-beachten/


    ob relevant, weiß ich nicht.


    Liebe Grüße

    Christine

  • Re:Later

    Ich habe so die böse Ahnung die "Warning: symlink()" hängt an PHP 7.2.x. Ich weis da im Moment nicht weiter und leg das erst mal auf Eis. Ich versuch's dann mal mit RewriteRule, meinst du das so in der htaccess ?

    wobei /home/strato/ auf /mnt/web101/ geroutet zu werden scheint.

    Code
    1. 1. RewriteRule ^images/(.*)$ /mnt/web101/../../52129103/htdocs/ksv23000/images/$1 [R=301,L]
    2. oder
    3. 2. RewriteRule ^images/(.*)$ /home/strato/http/premium/rid/../../52129103/htdocs/ksv23000/Images/$1 [R=301,L]
    4. oder
    5. 3. RewriteRule ^images/(.*)$ http://www.ksv-nesselblatt.de/images/$1 [R=301,L]
  • Es ist zum Mäuse Melken.

    Das 1. RewriteRule scheint zu funktionieren aber obwohl angefragte Datei vorhanden ist bekomme ich ein 404 not found :cursing:

    Code
    1. http://www.sv-haste.ksv-nesselblatt.de/mnt/web101/../../52129103/htdocs/index.php:1833/ksv23000/images/stories/kalender/09_23_005_Haste_SV_Training_400x200.png
  • Zitat

    Das 1. RewriteRule scheint zu funktionieren aber obwohl angefragte Datei vorhanden ist bekomme ich ein 404 not found

    Weil du diese Rewrite Rules falsch verstehst. Die Serverpfade haben darin nichts zu suchen. Deshalb mein Hinweis auf.

    Code
    1. RewriteRule ^images/(.*)$ http://www.ksv-nesselblatt.de/images/$1 [R=301,L]

    Linke Seite ist der Ordner der Subdomain, die gerade via sub.example.org aufgerufen wird und in der die .htaccess liegt.


    Geprüft habe ich das nicht, aber so ist der richtige Ansatz. "Wenn wer in meinem Ordner images was sucht, dann hol das Gesuchte aus dem image-Ordner der anderen Domain". Die Mutterdomain darf natürlich keine solche Regel drin haben.

  • Re:Later vielen Dank für deinen Zielführenden Beitrag.
    Aber auch den Anderen, Danke für Euren Beitrag.

    Es ist vollbracht mittels RewriteRules beerbeerbeer

    Eingehender Test der Varianten 1-3:
    - Browswer Cache und System-Cache löschen

    - Change htaccess
    - Call Frontend
    - Call Backend(Edit Beitrag)

    Code
    1. 1. liefert-> GET http://www.sv-haste.ksv-nesselblatt.de/mnt/web101/../../52129103/htdocs/ksv23000/images/stories/kalender/09_23_005_Haste_SV_Training_400x200.png 404 (Not Found)
    2. 2. liefert-> GET http://www.sv-haste.ksv-nesselblatt.de/mnt/web101/../../52129103/htdocs/ksv23000/images/stories/kalender/09_23_005_Haste_SV_Training_400x200.png 404 (Not Found)
    3. 3. liefert-> Abholen und des Anzeige des Bildes vom Mutterserver(wie Re:Later so schön sagt)
    4. ----------------------------------------------------------------
    5. 1. RewriteRule ^images/(.*)$ /mnt/web101/a3/03/52129103/htdocs/ksv23000/images/$1 [R=301,L]
    6. 2. RewriteRule ^images/(.*)$ /home/strato/http/premium/rid/../../52129103/htdocs/ksv23000/Images/$1 [R=301,L]
    7. 3. RewriteRule ^images/(.*)$ http://www.ksv-nesselblatt.de/images/$1 [R=301,L]
  • Ein Wermutstropfen bleibt noch.

    Im Backend Bildermanager muss ich den Relativen Link "images/stories/kalender/09_23_005_Haste_SV_Training_400x200.png" mit Hand am Arm eintragen.

    Die Ordnerliste zeigt auf "Home" und ist leer, scheint wohl im JCE hardcodet zu sein.

    In den JCE-Einstellungen Dateisystem findet man den Hinweis das bei fehlender Angabe auf "Images" oder "imges/stories" codiert wird.

    Wie aufwendig/empfehlenswert der Eingriff in die "com_jce" ist vermag ich derzeit noch nicht zu beurteilen. stopping

    Ob der Einsatz eines anderen/ähnlichen Editors Abhilfe schafft, da muss ich mich mal auf die Suche machen. search

  • Deshalb war das mit dem Symlink schon der richtigere Weg. Vielleicht hilft dir Pos#7 hier weiter Phoca Gallery - Bilder außerhalb der Joomla-Installation

    Da erkläre ich das schrittweise am Ordner images/phocagallery/. Du musst die Ordner auf den Kinddomains erst mal auch nicht unbedingt löschen, kannst sie auch umbenennen. Musst aber daran denken, dass, der symlink-Befehl 1x ausgeführt wird. Zumindest bin ich nicht sicher, ob eine 2. Ausführung dann einen Fehler wirft, weil der Symlink, die Verknüpfung schon existiert.

    https://secure.php.net/manual/de/function.symlink.php

    "Komisch" ist halt, dass der Zielordner zuerst im Befehl steht. Mach ich jedesmal erst mal falsch.

  • Ich habe das mit JCE ausprobiert. Da muss man aufpassen.

    Auf der Kindseite images/ umbenannt.

    Dann wollte ich im JCE der Kindseite nachsehen. Zeigt natürlich keine Bilder an.

    ABER legt sofort wieder ein neues, leeres Verzeichnis images/ an.

    Dann schlägt der symlink-Befehl natürlich fehl, da der Ordner schon existiert.


    Kurz: Finger weg von Joomla-Bilder-Erwqeiterungs-Zeugs, was da zwischen pfuschen könnte, bis der SymLink eingerichtet ist oder in Joomla / JCE vor der Aktion erst mal anders benannte Bilder-Ordner auf der Kindseite konfigurieren. Später wieder rücksetzen.