Créer Un Sous Domaine Avec PHP !!?? [Résolu]

Messages postés
17
Date d'inscription
dimanche 12 juin 2005
Dernière intervention
1 mai 2011
- - Dernière réponse : neigedhiver
Messages postés
2492
Date d'inscription
jeudi 30 novembre 2006
Dernière intervention
14 janvier 2011
- 2 juin 2007 à 21:28
Bonjour ...

   - Je voudrai savoir s'il existe un module en PHP pour créer mes propres sous-domaines sur mon serveur dédié ...

En fait, j'ai loué un serveur dédié et comme je vais proposer bientôt un système de blogs, je souhaiterai que l'adresse des blogueurs soit accessible via les 2 adresses "http://www.monsite.com/login_blog" et "http://login_blog.monsite.com" ... mais pour cela je dois créer un code PHP qui crée en même temps toutes les données nécessaires pour le blog ( base de données , fichiers , répertoire ...etc. ce qui est déjà fait ...) mais aussi le répertoire du blog associé au Sous-Domaine ...

   - Comment peut on créer un sous-domaine avec PHP ?
   - Comment bien sûre, éviter de créer un même répertoire pour un seul Sous-Domaine ?

Enfin, existe t'il un module pour la procédure ?

Merci d'avance pour tout ...
Cordialement ...
[mailto:N@B N@B]
Afficher la suite 

Votre réponse

3 réponses

Meilleure réponse
Messages postés
2492
Date d'inscription
jeudi 30 novembre 2006
Dernière intervention
14 janvier 2011
1
Merci
Salut,

Un sous-domaine n'a rien à voir avec PHP.
Les sous-domaines dépendent du domaine, et sont donc, comme le domaine, gérés par le DNS.
Tu as deux solutions : une rapide, l'autre lente. La rapide ne marche pas tout le temps...
La méthode lente consiste à définir sur le DNS le sous-domaine. Si c'est toi qui gères le DNS, un redémarrage suffit. Sinon, il faut attendre la propagation.
Il faut alors configurer Apache pour que le sous-domaine en question soit un hote virtual (Virtual Host vhost)> redémarrage d'Apache et hop.

La méthode rapide nécessite que le prestataire qui gère le DNS accepte les requêtes de type *.tondomaine.tld. Ce n'est pas le cas de tous : OVH ne le permet pas, Gandi et Amen oui (3 exemples que je connais, pour d'autres, faut voir).
A partir de là, les sous-domaines demandés qui n'existent pas affichent un sous-domaine par défaut : en général, c'est le www. Il faut alors vérifier l'adresse du serveur ( $_SERVER['SERVER_NAME'] ) et afficher les fichiers qui correspondent.

Aujourd'hui, les plateformes de blog comme dotClear ou WordPress permettent de gérer ça, mais ça ne dispense absolument pas de la configuration du serveur HTTP et du DNS.

Dire « Merci » 1

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 97 internautes nous ont dit merci ce mois-ci

Commenter la réponse de neigedhiver
Messages postés
17
Date d'inscription
dimanche 12 juin 2005
Dernière intervention
1 mai 2011
0
Merci
donc si je comprends bien cela ne peut se faire en PHP ...

   avec mon serveur , je cré mes sous-domaines avec un accès SSH en entrant une ligne spécifique qui me permet de les créer.

Je me demandai si je ne pouvais pas exécuter ces lignes avec PHP ( ou autre language comme cfm, jsp ou autres ) puis redémarrer Apache via ce même language aussi ...?

Merci d'avance ...
Commenter la réponse de nabmoah
Messages postés
2492
Date d'inscription
jeudi 30 novembre 2006
Dernière intervention
14 janvier 2011
0
Merci
Salut,

Si, ça, c'est faisable. Il existe pour cela toute une panoplie de fonctions php qui permettent d'exécuter une commande Unix :
http://ch2.php.net/manual/fr/ref.exec.php

Cela dit, tout dépend de la configuration du serveur : il ne faut pas que ces fonctions soient désactivées (elle le sont obligatoirement quand Safe Mode est activé, par exemple).

Cependant, question sécurité, ce n'est absolument pas une bonne idée.

Il est très nettement préférable de stocker via PHP les sous-domaines à créer dans un fichier texte ou dans une base de données et d'exécuter une tâche cron qui va récupérer ces noms de sous-domaines et les créer, puis redémarrer Apache à intervalle régulier (tous les 1/4 d'heure par exemple).

Mais il convient, encore une fois, de ne pas confondre la configuration Apache pour que le serveur HTTP traite les requêtes pour un sous-domaine et la configuration du DNS.

Je suppose que le script ue tu as fait les deux, c'est indispensable...
Commenter la réponse de neigedhiver

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.