2017-08-22 5 views

Répondre

0

Vous devriez être en mesure d'y parvenir en utilisant la règle suivante dans votre .htaccess:

RewriteEngine On 

RewriteCond %{HTTP_HOST} ^store1.example.com 
RewriteRule ^(.*)$ http://example.com/store1/$1 [L,NC,QSA] 

Ce que le ci-dessus est si la condition est remplie store1.example.com, il va réécrire l'URL example.com/store1. Cela fonctionnera également pour tous les autres répertoires que vous avez en tant que partie. Donc, il deviendrait example.com/store1/about par exemple.

Assurez-vous de vider votre cache avant vous le tester.

+0

Eh bien, cela fonctionne comme vous l'avez écrit mais ce n'est pas ce que je voudrais qu'il soit ... Sans votre code je mets dans un navigateur store1.example.com/about et tout est OK. Avec votre code lorsque je le tape, il est remplacé par example.com/store1/about et cela ne fonctionne pas du tout. Ce que je veux est de taper dans un navigateur example.com/store1/about et cela devrait fonctionner comme store1.example.com/about sans changer l'URL visible. – Milkli

+1

Vous ne pouvez pas réécrire de façon interne sur un hôte différent. Le 'RewriteRule' ci-dessus va déclencher _implicitly_ une redirection externe (302). Si vous voulez "réécrire" entre les hôtes, vous devez utiliser mod_proxy (drapeau 'P' avec mod_rewrite) - mais cela peut nécessiter une configuration supplémentaire de _server_. – MrWhite