[PHP] Meerdere Domeinen en websites onder 1 ip.

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Hier op mijn home webserver heb ik sins kort meerdere websites.
Maar als ik dan zeg maar die wil koppelen aan meerdere domeinen krijg ik bijv zoiets:
domein1.nl/map1/index.php
domein2.nl/map2/index.php

maar ik ben aan het proberen om dit te krijgen:
domein1.nl/index.php
en domein2.nl/index.php

ik vind het een beetje moeilijk uitleggen. ik hoop dat jullie het snappen.. ik heb het al geprobeert in php. ik heb dit script geschreven die ik in de root heb gezet als index.php:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?php
if ($_SERVER['HTTP_HOST'] == 'http://domein1.nl')
{
    include './map1'+$_SERVER['REQUEST_URI'];
}
elseif ($_SERVER['HTTP_HOST'] == 'http://icthulpleiden.com')
{
    echo "http://" . $_SERVER['HTTP_HOST']  . $_SERVER['REQUEST_URI'];
    //include '../icthulpleiden/'+$_SERVER['REQUEST_URI'];
}
else
{
    //header("HTTP/1.0 404 Not Found");
}

?>


maar dan kom ik in de problemen bij bijv:
http://domein1.nl/admin

Volgens mij is dit niet echt te doen met php. Is er mischien een anderen manier om dit aftehandelen?

Acties:
  • 0 Henk 'm!

  • Leftblank
  • Registratie: Juni 2004
  • Laatst online: 16-09 16:12
Verwijderd schreef op maandag 21 december 2009 @ 00:05:
Volgens mij is dit niet echt te doen met php. Is er mischien een anderen manier om dit aftehandelen?
Dit is typisch iets wat je je webserver laat doen; je zou eens kunnen kijken naar Apache's Virtual Host configuratie, of uiteraard de documentatie van je eigen webserver.

Acties:
  • 0 Henk 'm!

  • Manuel
  • Registratie: Maart 2008
  • Laatst online: 14-09 14:15
Welke webserver gebruik je en natuurlijk welk platform?

Acties:
  • 0 Henk 'm!

  • Herko_ter_Horst
  • Registratie: November 2002
  • Niet online
Met Leftblank ^^

Maar het kan natuurlijk prima in PHP, maar niet als je de documentatie van $_SERVER niet gelezen hebt. Wat staat er in $_SERVER['HTTP_HOST'] en waar vergelijk jij het mee?

"Any sufficiently advanced technology is indistinguishable from magic."


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
in $_SERVER['HTTP_HOST'] staat host info. zelfde als domein naam.

maar ik heb platform: Windows en ik draai apache.

dus ik denk dat die manier van leftblank wel zal werken.

ik ga het meteen even uitproberen!

Bedankt!

Acties:
  • 0 Henk 'm!

  • ik222
  • Registratie: Maart 2007
  • Niet online
Dit is niet iets wat je met php op moet gaan lossen. Dit moet je gewoon oplossen in je webserver configuratie. In Apache is het een kwestie van name based virtual hosts instellen.

Enige wat je daarvoor moet doen is even wat regels code instellen in je apache config file.

[ Voor 20% gewijzigd door ik222 op 21-12-2009 00:22 ]


Acties:
  • 0 Henk 'm!

  • Alex)
  • Registratie: Juni 2003
  • Laatst online: 21-08 11:20
Als je het toch met PHP wilt doen, zul je alle requests die volgen moeten rewriten naar een soort-van handler. Dit kun je doen met mod_rewrite. Maar je kunt beter kijken naar de vhosts-oplossing :)

We are shaping the future


Acties:
  • 0 Henk 'm!

  • RAJH
  • Registratie: Augustus 2001
  • Niet online
Ik gebruik hier zelf een .htaccess voor met de volgende regels.

code:
1
2
3
4
5
6
7
8
9
RewriteEngine on

RewriteCond %{HTTP_HOST} ^www.domein1.nl$ [NC]
RewriteCond %{REQUEST_URI} !/domein1.nl [NC]
RewriteRule (.*) /domein1.nl/$1 [QSA,L]

RewriteCond %{HTTP_HOST} ^www.domein2.nl$ [NC]
RewriteCond %{REQUEST_URI} !/domein2.nl [NC]
RewriteRule (.*) /domein2.nl/$1 [QSA,L]


Alle requests voor www.domein1.nl gaan naar de map /domein1.nl, en alle requests voor www.domein2.nl gaan naar de map /domein2.nl.

Acties:
  • 0 Henk 'm!

  • Herko_ter_Horst
  • Registratie: November 2002
  • Niet online
Verwijderd schreef op maandag 21 december 2009 @ 00:20:
in $_SERVER['HTTP_HOST'] staat host info. zelfde als domein naam.

maar ik heb platform: Windows en ik draai apache.

dus ik denk dat die manier van leftblank wel zal werken.

ik ga het meteen even uitproberen!

Bedankt!
In $_SERVER['HTTP_HOST'] staat de hostname, niet meer, niet minder. Kijk nu nog eens in je code en snap waarom het niet werkt...

"Any sufficiently advanced technology is indistinguishable from magic."


Acties:
  • 0 Henk 'm!

  • BinaryRun
  • Registratie: Juni 2009
  • Laatst online: 12-08 23:21
Waarom ga je niet voor plesk? Maakt het allemaal een stuk makkelijker.

Acties:
  • 0 Henk 'm!

  • Herko_ter_Horst
  • Registratie: November 2002
  • Niet online
DLStorm schreef op dinsdag 22 december 2009 @ 15:58:
Waarom ga je niet voor plesk? Maakt het allemaal een stuk makkelijker.
Kanon, mug? Dure, complexe oplossing voor een simpel probleem. Geen goed idee.

[ Voor 3% gewijzigd door Herko_ter_Horst op 22-12-2009 17:25 ]

"Any sufficiently advanced technology is indistinguishable from magic."


Acties:
  • 0 Henk 'm!

  • ErikKo
  • Registratie: Mei 2009
  • Laatst online: 15-09 15:54

ErikKo

Rippie

Het lijkt mij ook geen goed idee om dit met PHP op te lossen. Misschien zelfs niet met Apache, afhankelijk van hoe druk bezocht de verschillende domeinen zijn. Op die manier komen beide sites namelijk alsnog op dezelfde Apache uit. Mocht je toegang hebben tot de server zelf, zou je naar Pound kunnen kijken.

Acties:
  • 0 Henk 'm!

  • GlowMouse
  • Registratie: November 2002
  • Niet online
ErikKo schreef op woensdag 23 december 2009 @ 01:05:
Het lijkt mij ook geen goed idee om dit met PHP op te lossen. Misschien zelfs niet met Apache, afhankelijk van hoe druk bezocht de verschillende domeinen zijn. Op die manier komen beide sites namelijk alsnog op dezelfde Apache uit. Mocht je toegang hebben tot de server zelf, zou je naar Pound kunnen kijken.
Oneens, vanwege redundantie wil je elk domein op elke server beschikbaar hebben. Webservers schalen bovendien makkelijk door een loadbalancer in te zetten.

Acties:
  • 0 Henk 'm!

  • Soultaker
  • Registratie: September 2000
  • Laatst online: 00:49
Om er geen onduidelijkheid over te laten bestaan: de beste manier is inderdaad om de webserver het onderscheid tussen virtual hosts te laten maken.

Maar, met betrekking tot je post:
Waaorm zou deze URL een probleem opleveren?

Acties:
  • 0 Henk 'm!

  • Gomez12
  • Registratie: Maart 2001
  • Laatst online: 17-10-2023
ErikKo schreef op woensdag 23 december 2009 @ 01:05:
Het lijkt mij ook geen goed idee om dit met PHP op te lossen. Misschien zelfs niet met Apache, afhankelijk van hoe druk bezocht de verschillende domeinen zijn. Op die manier komen beide sites namelijk alsnog op dezelfde Apache uit. Mocht je toegang hebben tot de server zelf, zou je naar Pound kunnen kijken.
Om de woorden van een voorganger te gebruiken : Kanon, mug.

Met Pound komen alle requests weer op dezelfde Pound uit, als je het niet te gek maakt kan Apache het perfect aan, de meerdere sites zijn geen noemenswaardige load als Apache ze via virtual hosts afhandelt ( * Gomez12 kent hosts die vroeger rustig 10.000 virtual hosts op 1 machine lieten binnenkomen, ah de mooie tijden van static html )
Als ik zie staan home webserver denk ik niet gelijk aan een constructie die apache platlegt ( en als het al zo is zou ik eerst investeren in hosting, daarna misschien een reverse proxy, maar veelal eerst meer webservers )

Acties:
  • 0 Henk 'm!

  • Leftblank
  • Registratie: Juni 2004
  • Laatst online: 16-09 16:12
ErikKo schreef op woensdag 23 december 2009 @ 01:05:
Het lijkt mij ook geen goed idee om dit met PHP op te lossen. Misschien zelfs niet met Apache, afhankelijk van hoe druk bezocht de verschillende domeinen zijn. Op die manier komen beide sites namelijk alsnog op dezelfde Apache uit. Mocht je toegang hebben tot de server zelf, zou je naar Pound kunnen kijken.
Aangezien de TS problemen heeft met dit probleem vermoed ik dat een reverse proxy / loadbalancer behoorlijk overkill zal zijn ;).

Overigens snap ik niet waarom je zelf een oplossing wilt verzinnen voor een probleem waarvoor Apache praktisch in het leven geroepen is; het hosten van >1 site. Je zit ook nog met vervelende bijwerkingen van een oplossing in PHP/htacces; dingen als http://domein1.nl/domein2.nl/index.php zul je alsnog willen afvangen, waardoor je htaccess/phpfile alleen nog maar foutgevoelliger zal worden dan een normale config.
Pagina: 1