Créer une page de dispatch en php en fonction de l'url saisie

Créer une page de dispatch en php en fonction de l'url saisie - PHP - Programmation

Marsh Posté le 09-01-2009 à 11:25:01    

Bonjour à tous,
Tout d'abord bonne année à tous !!
 
J'espère que comme pour moi, elle sera pleine de projets ;)
 
Pour ma part elle commence avec la mise en place de 2 blogs sur un même hébergement mutualisé ce qui me pose problème avec les 2 domaines associés.
 
Voilà l'arborescence de mon hebergement actuellement:
 
./index.php   -> redirige vers ./blog1/index.php
./blog1/index.php
./blog1/...
./blog2/index.php
./blog2/...
 
2 domaines pointent vers ./      www.url_blog1.com  et www.url_blog2.com
 
Mon problème c'est ces 2 domaines sont renvoyés vers le blog1 finalement à cause de ma page index à la racine qui ne sait pas dispatché vers le blog1 ou 2 en fonction de l'url qui a été saisie pour arriver vers cette page.
 
J'ai bien tenté de filtrer en fonction du $refferer mais je me suis rendu compte qu'en saisi direct, il n'y a pas de refferer, donc ça ne fonctionne pas.

Code :

Comment pourrais je interpréter dans ./index.php quelle url a été saisie et donc lui demander de rediriger vers blog1 ou blog2 ?
 
Merci pour votre aide
WR


---------------
>> Portfolio: www.MyDeclic.com
Reply

Marsh Posté le 09-01-2009 à 11:25:01   

Reply

Marsh Posté le 09-01-2009 à 11:26:36    

Regarde du côté de $_SERVER['SERVER_NAME'], ou de $_SERVER['HTTP_HOST']

Reply

Marsh Posté le 09-01-2009 à 11:33:49    

Ou mieux, regarde du côté des VirtualHosts Apache :o


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
Reply

Marsh Posté le 09-01-2009 à 11:37:54    

je viens de tenter cela
 
<?
$ref=@$_SERVER['HTTP_HOST'];  
 
if $ref="www.blog1.com" php header('Location:/blog1');
 
 
if $ref="www.blog2.com" php header('Location:/blog2');
 
?>
 
j'obtiens en retour:
Parse error: syntax error, unexpected T_VARIABLE, expecting '(' in /homepages/29/d252890626/htdocs/index.php on line 4


---------------
>> Portfolio: www.MyDeclic.com
Reply

Marsh Posté le 09-01-2009 à 11:43:24    

C'est pas du PHP ce que tu écris...
= : affectation
== : comparaison
if()
{
...
}
C'est quoi "php" juste devant "header('..." ?


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
Reply

Marsh Posté le 09-01-2009 à 11:43:46    

[:k-nar]  
 
Si t'écrivais en PHP ça aurait éventuellement une chance de fonctionner [:pingouino]
 
Edit :  [:grilled]

Message cité 1 fois
Message édité par esox_ch le 09-01-2009 à 11:44:25

---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
Reply

Marsh Posté le 09-01-2009 à 11:48:12    

esox_ch a écrit :

[:k-nar]  
 
Si t'écrivais en PHP ça aurait éventuellement une chance de fonctionner [:pingouino]
 
Edit :  [:grilled]


 
 
Merci d'utiliser mon smiley [:grilled].
Y'a longtemps que je l'avais pas vu :)


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
Reply

Marsh Posté le 09-01-2009 à 11:49:47    

Je suis pas codeur php désolé.
J'essayé juste de repartir de cet essai qui fonctionne pour bidouiller un dispatcheur
<?
$ref=@$_SERVER['HTTP_HOST'];  
echo "<font face='Verdana' size='3'><b>Referrer of this page  = $ref </b>";
 
?>
 
 
Voilà mon dernier essai foireux
<?
$ref=@$_SERVER['HTTP_HOST'];  
 
if $ref=="www.blog1.com" {phpheader('Location:/blog1')};
if $ref=="www.blog2.com" {phpheader('Location:/blog2')};
 
?>


---------------
>> Portfolio: www.MyDeclic.com
Reply

Marsh Posté le 09-01-2009 à 12:02:07    

Merci pour votre aide les gars!
 
J'ai réussi à faire ce que je voulais, ça marche impéc
 
Pour les autres galériens du php, ma solution
 
<?php
 
switch($_SERVER["HTTP_HOST"])
{
    case "www.blog1.com" :    
    header('Location:/blog1');
    break;
 
    case "www.blog2.com" :        
    header('Location:/blog2');
    break;
 
}
 
?>


---------------
>> Portfolio: www.MyDeclic.com
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed