7
votes

URL réécrire pour ajouter un répertoire au début de l'URL

sur mon site Web, toutes les images / feuilles de style sont dans le répertoire / cms / .... Récemment, notre site Web s'est déplacé vers un nouveau serveur à une URL temporaire où ils ont référencé comme / NewDirectory / CMS /...< / P>

Comment pouvons-nous ajouter / NewDirectory / à tous / cms / appels?


1 commentaires

Quel serveur Web utilisez-vous?


3 Réponses :


12
votes

à l'intérieur du fichier .htaccess strong> fichier xxx pré>

Ceci effectuera une réécriture, donc accédant à http://www.server.com/cms/index .html em> servira réellement le contenu de http://www.server.com/newdirectory/cms/index.html em> p>

Remarque: cette solution suppose que le CMS est la seule chose à servir pour ce domaine. P>

Si ce domaine sert plus que le CMS (et seul le CMS doit être redirigé), les suivants peuvent être meilleurs: P>

RewriteEngine On
RewriteCond %{REQUEST_URI} ^/CMS/
RewriteRule ^(.*)$ /newdirectory/$1


0 commentaires

1
votes

Je suggérerais d'utiliser mod_rewrite, que la plupart des serveurs Apache / Linux ont. Créez un fichier appelé .hTtaccess dans le docroot de votre site avec le contenu:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^/CMS/(.*)$      /newdirectory/CMS/$1    [QSA]
</IfModule>


0 commentaires

4
votes

Vous n'avez pas besoin d'une rédregle (ou de mod_rewrite) pour cela. Vous pouvez utiliser un simple redirectMatch: xxx


1 commentaires

C'est un poids légèrement inférieur et ne nécessite pas que mod_rewrite soit activé. Aucun de ces points n'est vraiment un problème dans la pratique aujourd'hui, mais c'est toujours une bonne technique.