2010-09-14 5 views
0

Fondamentalement, ce que je veux faire:dynamique avec php sous-domaine/htaccess

  1. changement child.domain.com à domain.com/child

  2. Cependant, j'ai déjà un rewriterule dans htaccess à changez domain.com/child en domain.com?page=child. Bien sûr, dans htaccess, j'ai aussi une condition de réécriture pour ignorer les dossiers et fichiers réels. Mais si je crée un sous-domaine pour enfant, le serveur créera un dossier physique pour enfant, donc domain.com/child sera complètement ignoré par RewriteRule.

  3. Donc, si possible, je veux changer child.domain.com directement dans domain.com?page=child

Est-ce réalisable grâce htaccess ou je dois mettre les sous-domaines dans mon cPanel?

Répondre

0

Vous devez configurer le sous-domaine pour qu'il réponde correctement aux requêtes DNS. Vous pouvez faire en sorte que le sous-domaine soit résolu sur le même serveur.

Les règles de réécriture sont traitées dans l'ordre où elles apparaissent dans votre fichier de configuration et vous pouvez ajouter [L] à la fin de la règle pour contrôler si vous souhaitez arrêter le traitement ou continuer à appliquer d'autres règles.

Utilisez RewriteCond pour correspondre contre le nom d'hôte (la RewriteRule suivante correspond seulement si RewriteCond est remplie:

RewriteCond %{HTTP_HOST} subdomain.domain.com 
RewriteRule ^/(.*) http://domain.com/?page=subdomain&$1 [L]