Dynamic .httaccess file
tenminste dat hoop ik.
ik heb een script gemaakt dat sites maakt doormiddel van sql
alle sites zijn dynamic en bestaan dus niet op 1 na (het main systeem) elke site heeft ook een mail systeem enz, ook allemaal dynamic
nu heb ik echter 1 groot probleem
al de site gebruiken dus dezelfde .httacces file
echter naarmate er meer sites komen en ik steeds dingen moet aanpassen voor speciale wensen van mensen wordt mijn .httaccess file een beetje vol en gaan regels met elkaar in conflict
ik zoek een manier dat ik een httacces file dynamic kan openen
dus bv via een sql table en niet via de .httacces
het liefts voeg ik dus gewoon php code toe in de .httacces maar dit gaat helaas niet werken
had er ook al gewoon als test een #!/usr/local/bin/php -q tussen gezet maar dan krijg ik een error wat eigelijk ook wel normaal is
ik zoek dus een oplossing om voor elke website een eigen .httacces te openen
terwijl er dus maar 1 .httacces file is
mvg mrdercoder
Maar je hebt maar 1 domeinnaam neem ik aan? En daar geef je dan een parameter aan mee ofzo?
deze zijn allemaal een addon domain naar 1 adress
>>Maar je hebt maar 1 domeinnaam neem ik aan? En daar geef je dan een parameter aan mee ofzo?
ja en nee
de parameter is de domein zelf
best kunstig gemaakt al zeg ik het zelf
ik heb doormiddel van een php script iets gemaakt dat het script kijkt naar de domein naam en dan de bijpassende sql delen en style files laat zien
header footer enz
echter wil ik voor al deze sites dus ook een eigen httaccess file
wat dus niet kan aangezien het allemaal addon domains zijn
ik ben nu een beetje aan het klooien met RewriteCond in de httacces en dit blijkt nu te werken
maar ik hoop eigelijk dat er een manier bestaat dat ik via php een .httacces file kan selecteren
Verder kan je voor zover ik weet binnen Apache (PHP doet er niks mee) niet op virtual-host bepalen hoe een .htaccess heet. Ook Includes (van Apache) kan je niet in .htaccess gebruiken terwijl dit wel in een VirtualHost mogelijk is.
Het enige wat ik me kan bedenken is het herschrijven van je framework zodat je een Frontcontroller hebt, waarbij je alle pagina's die opgevraagd worden, via een Router worden doorgemapt naar de juiste Controller.
Dus www.domein.nl/contact komt uit in de Contact-controller
Dan heb je voldoende aan een enkele .htaccess:
Code (php)
1
2
3
4
5
2
3
4
5
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
</IfModule>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
</IfModule>
Ikzelf raad voor beginners CakePHP aan. En dan het liefst natuurlijk de nieuwe versie ;-)
Gewijzigd op 03/01/2016 13:32:36 door - Ariën -
maar zo bedoel ik het niet
ik heb bv 2 alias domein namen
domein1.com en domein2.com
deze linken allebij door naar domein3.com en dus naar 1 en dezelfde home/username/domains/domain3.com/public_html
terwijl ze wel gewoon netjes hun eigen naam behouden
ze gebruiken dus allemaal dezelfde php files
het uiterlijk wordt gehaald uit de database
het script doet dit door simpelweg te kijken naar het domein naam en dan de bijpassende sql te selecteren
zelfs de mail is dynamisch doorgelinkt via een catchall email en pipe script
elke mail die naar een domein op mijn server wordt gestuurd komt in 1 mail en mail wordt dan via de pipe doorgestuurd naar het user account van wie de domein naam is
enz enz
echter gebruiken ze dus ook allemaal dezelfde .htaccess
ik zoek een manier om elk domein een eigen .htaccess te kunnen geven
op dit moment gebruik ik voor elke domein een eigen RewriteCond
en 1 voor alle domein namen bij elkaar
maar hierdoor wordt me .htaccess file een beetje groot
ik hoop dus op een manier dat ik het via php of sql kan sturen
Gewijzigd op 03/01/2016 14:36:03 door sylvester vader
Je zal dan een router moeten maken, zoals ik al aangeef. Dan heb je maar een generieke .htaccess nodig.
nooit zo over gedacht eigelijk
dan kan ik soort van via $_SERVER[‘REQUEST_URI’] en explode eigelijk hetzelfde doen als met .htaccess
idee hou ik in me achterhoofd klinkt opzich wel goed
maar ik moet heel veel aanpassen om dat te realiseren