/Admin > directory delen met andere websites op de server

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Cristobal Langendos

Cristobal Langendos

20/02/2017 14:17:46
Quote Anchor link
Hallo,

wie kan me advies geven, ik geraak er niet uit !
Ik wil mijn eigen CMS systeem delen met alle websites op mijn server zodat —als ik er een wijziging in maak— het overal up-to-date is. Dus voor de duidelijkheid, alle scripts van m'n CMS zitten in de folder /admin. Het conf.inc bestandje met db-setting etc. zit in de root, een niveau hoger dus.

Hoe krijg ik dit voor elkaar ? Redirect is niet echt wat ik zoek, Alias vermoedelijk ook niet, mss via ProxyPass(Reverse)... of via PHP include (volledige directory ?)

Of mss wel veel simpelder te fixen ??
Iemand een goede methode voor dit ?

Thx a lot !
 
PHP hulp

PHP hulp

26/11/2024 16:13:01
 
Ben van Velzen

Ben van Velzen

20/02/2017 17:02:03
Quote Anchor link
De enige manier om het echt te kunnen doen is door een symlink te plaatsen bij iedere website die de admin directory nodig heeft. Een andere mogelijkheid is versiebeheer gebruiken, is eigenlijk ook veel logischer.
 
Cristobal Langendos

Cristobal Langendos

21/02/2017 06:39:06
Quote Anchor link
Bedankt Ben, met 'symlinks' lukt het al behoorlijk, en is ook nog heel eenvoudig! Versiebeheer is idd helemaal correct! Nu moet ik enkel nog uitvissen hoe de juiste config per site geladen wordt, maar dit moet wel lukken...
[UPDATE] > $_SERVER["DOCUMENT_ROOT"] gezet, en alles werkt !
Thanks Ben !
Gewijzigd op 21/02/2017 06:56:45 door Cristobal Langendos
 
Frank Nietbelangrijk

Frank Nietbelangrijk

21/02/2017 09:28:21
Quote Anchor link
Als je website een "Single point of entry" heeft dan is het heel simpel te realiseren. Maar helaas schrijf je niets over hoe je systeem opgebouwd is.

Heb je bijvoorbeeld deze mappen:

- app
- site1.nl
- site2.nl

en staat je complete systeem in de app map dan kun je in beide sites volstaan met iets als
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
// index.php
include '../app/map/kernel.php';

$kernel = new Kernel();
$kernel->execute();
?>
Gewijzigd op 21/02/2017 09:31:42 door Frank Nietbelangrijk
 
Thomas van den Heuvel

Thomas van den Heuvel

21/02/2017 14:51:14
Quote Anchor link
Voor beide valt wat te zeggen:
- een "gedeelde core" via symlink of gedeelde map of wat dan ook
- standalone instanties van het systeem die onafhankelijk van elkaar kunnen opereren

De keuze hangt o.a. af van:
- de frequentie van updates (hoe vaak gebeurt dit?)
- het aantal websites (hoeveel zijn er?)
- de diversiteit van de websites
- het gemak van verspreiding (hoe moeilijk is dat (nu)?)
- maatwerk die mogelijk conflicteert met bepaalde core updates? (voor de goede orde zou je dit per site moeten testen, wat ons brengt bij ...)
- ... de opstelling van je websites (ontwikkel-, test-, acceptatie-, en productie-omgeving?)
- de organisatie van je code, hoe is deze ingedeeld
- de complexiteit van de systemen
- etc.

Je zou natuurlijk ook je update-strategie kunnen veranderen dat je updates meer batch-gewijs uitvoert zodat het werk in absolute zin minder wordt. Dus niet elke keer een update pushen als je een komma of punt rechtzet. Of afhankelijk van de ernst van een update een bepaalde aanpak hanteren (features, hotfixes).

Met de gegevens die de topicstarter tot nu toe heeft verstrekt is het niet echt makkelijk om hierin een goede keuze te maken. Het is nogal lastig om in één zin antwoord te geven op de vraag "Hoe Regel Ik De Technische Opzet Van Mijn CMS En Waarom Zo".

EDIT: en dan is er nog een derde optie: breng MEERDERE websites onder in hetzelfde CMS. Dit zou dan het oorspronkelijke probleem in zijn geheel wegnemen. Op grond van $_SERVER['SERVER_NAME'] zou je dan een switch-statement kunnen maken voor directories met maatwerk en/of de database voor de specifieke website.
Gewijzigd op 21/02/2017 15:00:02 door Thomas van den Heuvel
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.