Aller au contenu

Réécriture des URL au même style qu'une plateforme de blogs


Sujets conseillés

Bonjour,

Voila j'ai un site internet et des sous-domaines.

Je voudrais que les visiteurs qui arrivent sur xxx.monsite.com consulte la page www.monsite.com/espace.php?pseudo=xxx

et que les visiteurs qui consulte par exemple la page xxx.monsite.com/12.html voie la page www.monsite.com/espace.php?pseudo=xxx&page=12

Mais évidemment j'aimerais que ça fonctionne avec n'importe quel sous-domaine et n'importe quel numéro de page...

Je n'arrive pas à créer le htaccess avec ces idées là.

Pourriez-vous m'aider svp. Merci

Lien vers le commentaire
Partager sur d’autres sites

Bonjour,

Je suppose que tu as un serveur dédié, car sinon tu vas avoir des difficultés à faire ce que tu souhaites.

Tout d'abord il faut qu'au niveau des enregistrements DNS la résolution des sous-domaines mène effectivement vers ton serveur. C'est possible en ajoutant cette ligne (avec l'adresse IP correcte à la place de 123.123.123.123) dans ton fichier bind (monsite.com.hosts, se trouvant à priori sous /var/named/) :

* IN A 123.123.123.123

Une fois cette ligne ajoutée, tu devras redémarrer bind avec la commande "/etc/init.d/named restart"

Ensuite il faudra avoir le mod_vhost installé sous Apache (si ce n'est pas le cas tu devras recomplier Apache pour l'installer) afin de pouvoir créer un VirtualHost également avec un wildcard (*) menant vers le répertoire de ton choix, cela se passe dans le fichier httpd.conf de ton serveur Apache. À priori tu devrais déjà avoir un VirtualHost ou tu trouveras un ligne du genre :

ServerAlias domain.com

(OU www.domaine.com)

Remplace-là par

ServerAlias domaine.com *.domain.com

Maintenant tous les sous-domaines (sauf ceux que tu as explicitement défini dans d'autres <VirtualHost>) pointent vers le même DocumentRoot que ton domaine

Donc finalement tu gères ces sous-domaines avec ton fichier .htaccess :

RewriteEngine On
RewriteCond %{HTTP_HOST} !www.monsite.com$ [NC]
RewriteCond %{HTTP_HOST} ^(www.)?([a-z0-9-]+).monsite.com [NC]
RewriteRule (.*) %2/$1 [L]

Cela prend en compte le fait que le sous-domaine "www" ne doit pas être récrit, et le fait que un sous-domaine du type www.sousdomaine.monsite.com doit aussi être récrit (comme le simple sousdomaine.monsite.com).

C'est du travail et cela nécessite certaines connaissances et certains accès sur le serveur utilisé pour l'hébergement, ce n'est pas possible sur un hébergement mutualisé en général.

Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...