11
votes

.htaccess Rediriger la racine à index.php

J'ai besoin de rediriger depuis http://example.com/ à http://example.com/index.php . .


0 commentaires

4 Réponses :


20
votes

Utilisez ceci:

DirectoryIndex index.php


1 commentaires

Pour des raisons de référencement, c'est pas OK d'avoir le même contenu pour deux URL différentes. Donc, DirectoryIndex fait pas aide pour le scénario de référencement.



4
votes

Essayez ceci:

RewriteEngine On
RewriteBase /

RewriteCond %{REQUEST_URI} ^$
RewriteCond %{HTTP_HOST} ^example.com$
RewriteRule ^$ http://example.com/index.php [L,R=301]


4 commentaires

Pourquoi avez-vous besoin mod_rewrite pour cela? DirectoryIndex est la bonne réponse ici.


Il y a une différence dans la façon dont les deux travaillent. Le répertoire par défaut ne change pas l'urion, si vous devez faire quelques manipulations. C'est un gâchis.


Pour des raisons de référencement, c'est pas OK d'avoir le même contenu pour deux URL différentes. Donc, DirectoryIndex fait pas aide pour le scénario de référencement.


Cette solution est plus flexible, car l'index de répertoires ne peut pas rediriger comme une personne demandée



1
votes

Juste pour ajouter ma propre solution, puisque La réponse de Michael n'a pas fonctionné pour moi, j'ai fait quelque chose comme:

RewriteEngine on

# These two lines redirect non-www to www.
RewriteCond %{HTTP_HOST} ^example\.com$
RewriteRule (.*) https://www.example.com$1 [R=301,L]

# These two lines redirect the root to index.html.
RewriteRule ^$ /index.html [R=301,L]
RewriteRule ^/$ /index.html [R=301,L]


0 commentaires

0
votes

Ajout à @uwe Keim's Réponse ci-dessus, j'avais des non-www vers la configuration www sur Apache Virtual hôtes.

Qu'est-ce qui a fonctionné pour moi sur .htaccess était: xxx


0 commentaires