URL Rewriting et sous-domaines

Nouveau WRInaute
Bonjour à tous !

Je me lance dans l'URL Rewriting et j'aimerais avoir un petit coup de pouce...
Sur mon site je possède une dizaine de catégories gérées dans une base de données.
J'ai ensuite des produits dans chaque catégorie.
J'aimerais créer un sous-domaine par catégorie, de manière à avoir des pages du style :
Code:
-http://categorie1.domaine.com/
-http://categorie2.domaine.com/
...
-http://categorie10.domaine.com/
ainsi que :
Code:
-http://categorie1.domaine.com/produit-a.htm
-http://categorie2.domaine.com/produit-b.htm
...
-http://categorie10.domaine.com/produit-c.htm

Pouvez-vous m'expliquer comment faire ? J'ai un serveur dédié et je pense qu'il faut écrire les règles de réécriture directement dans httpd.conf mais je n'y arrive pas.

Merci d'avance et bravo pour votre site !
 
WRInaute occasionnel
En version de base, ca pourrait donner
Code:
<VirtualHost *>
	ServerAlias *.domaine.com
	DocumentRoot /home/www/domaine

	RewriteEngine On

	RewriteCond   %{HTTP_HOST}                 !^www\.domaine.com$ [NC]
	RewriteCond   %{HTTP_HOST}                 ^[^.]+\.domaine.com$ [NC]
	RewriteRule   ^(.+)                        %{HTTP_HOST}$1          [C]
	RewriteRule   ^([^.]+)\.domaine.com/(.*) /monscript.php?cat=$1&page=$2 [L]
</VirtualHost>

Le VirtualHost est déclaré pour accepter tous les sous-domaines.

La première règle indique que pour www on ne fait rien, la deuxième vérifie que l'on est bien appelé par un sous-domaine, la troisième ajoute l'hôte à la chaîne de travail (/produit-a.htm en categorie1.domaine.com/produit-a.htm) et la dernière découpe le tout pour être traité par un script.
 
WRInaute discret
nikoshr a dit:
En version de base, ca pourrait donner
Code:
<VirtualHost *>
	ServerAlias *.domaine.com
	DocumentRoot /home/www/domaine

	RewriteEngine On

	RewriteCond   %{HTTP_HOST}                 !^www\.domaine.com$ [NC]
	RewriteCond   %{HTTP_HOST}                 ^[^.]+\.domaine.com$ [NC]
	RewriteRule   ^(.+)                        %{HTTP_HOST}$1          [C]
	RewriteRule   ^([^.]+)\.domaine.com/(.*) /monscript.php?cat=$1&page=$2 [L]
</VirtualHost>

Le VirtualHost est déclaré pour accepter tous les sous-domaines.

La première règle indique que pour www on ne fait rien, la deuxième vérifie que l'on est bien appelé par un sous-domaine, la troisième ajoute l'hôte à la chaîne de travail (/produit-a.htm en categorie1.domaine.com/produit-a.htm) et la dernière découpe le tout pour être traité par un script.

Bonjour,

Je suis novice concernant les sous-domaines !

Je voudrais créer des sous-domaines : dois-je créer un répertoire 'Rép1' et le placer dans le 'www' ou dois-je utiliser l'URL-Rewriting' --> si oui, ou dois-je placer le code que vous avez donné?

Merci d'avance
 
WRInaute occasionnel
Je souhaiterais mettre en place cette solution mais je suis en mutualisé et je n'ai pas accés au fichier de conf Apache.

Y a t'il un moyen de contourner ce problème ? Ou dois-je passer au dédié ?
 
WRInaute accro
easyzik a dit:
Je souhaiterais mettre en place cette solution mais je suis en mutualisé et je n'ai pas accés au fichier de conf Apache.

Y a t'il un moyen de contourner ce problème ? Ou dois-je passer au dédié ?

Le virtuel ne passera jamais sur des mutualisés car aucun mutualisé ne te permet de créer des sous-domaines à gogo.

Tu en veux + ?
--> $$$$

Ou alors serveur dédié ; - )

Puis le virtualHost c'est coté serveur uniquement
http://www.illiweb.com/manuel/Apache_1. ... irtualhost
 
Discussions similaires
Haut