[Apache] VHost in een DB

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Jos

Jos

16/01/2009 00:25:00
Quote Anchor link
Ik ben bezig met een website waarbij verschillende domeinnamen naar de server verwezen kunnen worden. Ik maak gebruik van een debian server met Apache2 + PHP5 + MySQL5.

Nu wil ik graag dat wanneer een bezoeker op de site komt gekeken wordt in een database en aan de hand van dat de juiste map op de server wordt aangewezen voor apache.

Ik heb wel wat gezocht:

http://www.apachelounge.com/viewtopic.php?t=2210 -- Dit is alleen voor win32 zover ik gevonden had.

Nu wil ik alleen niet dat ik een cronjob moet opzetten dat hij constant elk kwartier apache herlaad. Maar hij moet wel de nieuwe vhosts mee nemen.

Iemand een idee hoe ik dit doe?

Bedankt.
 
PHP hulp

PHP hulp

21/05/2024 05:22:36
 
- Jim  -

- Jim -

16/01/2009 00:46:00
Quote Anchor link
mbv system() kan je binnen php een systeem functie aanroepen om apache te herstarten als er een nieuw domein is aangemaakt.
 
Arjan Kapteijn

Arjan Kapteijn

16/01/2009 10:09:00
Quote Anchor link
Wat je ook kan doen is werken met mappen, als ik de map jos aanmaak hoef ik niks doen of te herstarten om jos.i-cey.net werkend te krijgen.

Dat werkt ook voor domeinen; stel je hebt iets als /var/www/websites/%0. Een request voor http://www.website.nl/test.php word dan omgezet naar /var/www/websites/www.website.nl/test.php.
 
Jos

Jos

16/01/2009 10:23:00
Quote Anchor link
Dank voor alle reacties..

System() geeft foutmelding met "/etc/init.d/apache2 reload"
Reloading web server config...7338 httpd not running, trying to start failed!

Domeinnaam met %0 kan dus ook zijn jos.nl, test.jos.nl en mijn.test.jos.nl.
Dat kun je dan niet opgvangen met %0, niet met %1 want het is niet altijd hetzelfde. Teminste zover ik het begreep op internet.

Bedankt,
Jos
Gewijzigd op 01/01/1970 01:00:00 door Jos
 
Arjan Kapteijn

Arjan Kapteijn

16/01/2009 10:29:00
Quote Anchor link
Zelf test.test.test.i-cey.net werkt hier prima, maar als jij denkt dat het niet kan moet je vooral doorgaan met je huidige ideeën.
 
Jos

Jos

16/01/2009 10:37:00
Quote Anchor link
Het is niet dat ik het niet wil gebruiken maar ik wil dat gebruikers straks bijvoorbeeld "jos.nl" kunnen toevoegen, deze moet dan verwijzen naar /var/www/jos.nl. Maar wanneer iemand piet.jos.nl doet moet hij nog steeds naar /var/www/josjr.nl wijzen en niet naar /var/www/pet.josjr.nl.

Of is er een standaard om het domeinnaam zelf te pakken?
Want %0 pakt de gehele URL bij mijn weten.

Bedankt.
 
Arjan Kapteijn

Arjan Kapteijn

16/01/2009 10:59:00
 
Jurgen assaasas

Jurgen assaasas

16/01/2009 11:16:00
Quote Anchor link
Zoiets noemt men DNS. Op het moment dat je een nieuwe virtual host toevoegd aan apache dien je deze ook in je DNS aan te maken. In het virtual host bestand /etc/apache2/sites-enabled/000-default staan je referenties, je kunt natuurlijk ook voor elke site een aparte vhost bestand maken. Hier in geef je zijn alias aan, dus het domein en de map er naar toe. Pakketten als PLESK en Direct Admin doen dit automatisch bij het toevoegen van een nieuw domein.


Maar wat wil je nu? Wil je IP of een gebruikersnaam checken of wat? Je kunt hierbij natuurlijk ook gewoon de domeinnaam erbij opslaan in de database en dan dmv.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
header('location: '.$row['domein']);
 
Jos

Jos

16/01/2009 11:26:00
Quote Anchor link
Nou het zit namelijk zo ik ben bezig met een website waarop vriendengroepen hun website aanmelden. De domeinnaam van de vriendengroep zal dan vervolgens naar de server verwezen worden.

Graag zou ik alle vriendengroepen onderscheiden in mappen dus zeg maar:
/var/www/websites/vriendengroep1.nl
/var/www/websites/vriendengroep2.nl

Wanneer dus een vriendengroep zich aanmeld wordt deze map gemaakt met enkele standaard bestanden erin.

Wanneer een bezoeker dan komt op vriendengroep1.nl moet hij automatisch naar de juiste map verwezen worden.

Ik wil geen vertraging tussen aanmelding en werking van de domeinnaam (cronjob). Ik wil eigenlijk ook vriendengroepen op non-actief kunnen zetten dus dat de map en data blijft bestaan maar dat hij niet meer naar die map verwijst.

Eigenlijk wou ik dat ik alles uit een database van mysql kon lezen maar daar kan ik niet echt iets voor vinden.

-=-=-=-
VirtualDocumentRoot

Syntax error on line 2 of /etc/apache2/sites-enabled/000-default:
Invalid command 'VirtualDocumentRoot', perhaps misspelled or defined by a module not included in the server configuration
failed!
 
Jurgen assaasas

Jurgen assaasas

16/01/2009 11:35:00
Quote Anchor link
Ik denk dat het in jou geval beter is een htaccess rewrite/redirect te gebruiken. Vele malen eenvoudiger dan op server niveau voor dit soort doeleinden.

Zijn het bestaande domeinen of joudomein.com/groep1 of groep1.joudomein.com?
 
Arjan Kapteijn

Arjan Kapteijn

16/01/2009 11:36:00
Quote Anchor link
Met mappen werkt dat eenvoudiger, gewoon de leesrechten weghalen. Je bestanden blijven staan, iedereen kan er via de FTP gewoon bij maar Apache kan ze niet meer lezen...
 
Jos

Jos

16/01/2009 12:29:00
Quote Anchor link
Bedankt voor de info..

Het zijn bestaande domeinen..
Naast de benadering d.m.v. jos.vrienengroepen.nl kunnen ze ook jos.nl gebruiken en beide komen dan op hetzelfde uit. Graag zou ik het wel op server niveau doen het is voor mezelf ook om van te leren dus ik sta open voor alle info.

Leesrechten verwijderen inderdaad daar had ik nog niet aan gedacht, kom je dan standaard uit op basis documentroot..
Wanneer bijvoorbeeld een vriendengroep zich misdraagt of iets wil ik hun op non-actief kunnen zetten en dan moeten ze uit komen op een bepaalde pagina.

Hoe kan ik de onderstaande fout oplossen?

VirtualDocumentRoot

Syntax error on line 2 of /etc/apache2/sites-enabled/000-default:
Invalid command 'VirtualDocumentRoot', perhaps misspelled or defined by a module not included in the server configuration
failed!

De mod_vhost_alias is ingeladen.
Ik had deze proberen te enable met <enable mod_vhost_alias> of iets wat ik gevonden had. Maar toen kreeg ik de melding dat ik enable niet gesloten had.

Bedankt alvast.
 



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.