566 tutoriels disponibles
Chercher un tutoriel
Bienvenue
sur Shareannonce
 
Ecrit par: Shareannonce
Date création:  08-04-2011
Nombre de vues:  2583
Catégorie:  informatique > gestion > ovh
Note: 
 
   Tutoriel N° 70

Pour avoir des sous domaines dynamiques, il existe plusieurs méthodes.

Dans ce tutoriel je n'utiliserai pas htaccess mais seulement le fichier index.php racine de votre site.


Avec SSH:

Avant cela il faut ajouter dans le virtualhost de votre domaine dans le fichier httpd.conf

<VirtualHost xx.xx.xx.xx:80>
ServerAdmin postmaster@domain.com
DocumentRoot /home/domain/www
SuexecUserGroup domain users
ServerName www.domain.com
# ligne à ajouter
ServerAlias *.domain.com domain.com

CustomLog logs/domain-access_log combined
ScriptAlias /cgi-bin/ /home/domain/cgi-bin/
AddHandler x-httpd-php4 .php
</VirtualHost>

Redemarrer ensuite apache
/etc/init.d/apache restart



Dans Webmin:

Serveurs > Serveur de noms de domaines BIND > votre domaine > Modifier le fichier d'enregistrements

Ajouter la ligne enremplaçant xx.xx.xx.xx par l'ip de votre serveur:
* IN A xx.xx.xx.xx

Puis redemarrer bind
/etc/init.d/named restart

Il y aura un temps de propagation dns necesssaire, il est donc possible que les sous domaines ne soient pas tout de suite accessibles !



Script index.php racine:

Ensuite votre fichier index.php racine devra avoir la forme suivante:

Voila mon script index.php

<?
$xxx = explode( '.', $_SERVER["HTTP_HOST"], 2 ) ;
$sousdom = $xxx[0] ;


if( $sousdom != 'www' AND $sousdom != '' ) {
include( "sousdomaine.php" ) ;
exit ;
}

else
{include("indexhome.php");}?>


Explication:

On commence par extraire l'url et l'on extrait son sous domaine.
On regarde si celui-ci est www.

Si c'est www dans ce cas on charge la homepage de votre site qui sera stockée dans indexhome.php

Sinon on appelle le fichier sousdomaine.php


Cas de l'erreur 404:

Par exemple si l'on appelle un sous domaine qui n'est pas censé exister.
Dans ce cas il faut faire un header location sur une page 404 par exemple dans le script index.php ci dessus

<?
header('HTTP/1.1 404 Not Found');
header('Content-Type: text/html; charset=iso-8859-1');
include("http://www.domain.com/404/404.html");
?>



Pour aller plus loin, je vous conseille la lecture d'un autre tutoriel:

Tutoriel N° 71 - Creer des urls du type http://www.dom.com/nom
http://www.shareannonce.com/david/tutorial/71




 
 
   Autres tutoriels de la même catégorie >
 
ShareAnnonce version 2.0 Tous droits reserves. | Condition d'utilisation | Contact