Utiliser les redirections:
Vous pouvez utiliser la directive Redirect
(Mod_Alias). Modifiez votre fichier .htaccess
et ajoutez cette ligne:
Redirect permanent "/index.html" "/cart/index.php"
Ou vous pouvez utiliser la directive RedirectPermanent
. Modifiez votre fichier .htaccess
et ajoutez cette ligne:
RedirectPermanent "/index.html" "/cart/index.php"
Utiliser le moteur de réécriture:
Vous pouvez utiliser Mod_Rewrite pour obtenir le même résultat que ci-dessus. Modifiez votre fichier .htaccess
et ajoutez ces lignes:
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{HTTP_HOST} !cart
RewriteRule "^$" "/cart/index.php" [R=301,L]
En savoir plus sur Mod_Rewrite: [1] ; [2] ; [3] .
Redirection intelligente, en utilisant PHP:
Modifiez votre fichier .htaccess
et ajoutez ces lignes:
# Obliterate previous DirectoryIndex order:
DirectoryIndex disabled
# Create new DirectoryIndex order:
DirectoryIndex site-condition.php index.php index.html
Créer un fichier PHP, appelé site-condition.php
, qui redirigera la demande initiale vers le premier fichier existant en fonction de cette priorité de commande:
-
/cart/index.php
-
/index.php
-
/index.html
Le contenu de site-condition.php
pourrait ressembler à:
<?php
$primary_index = 'cart/index.php';
$secondary_index = 'index.php';
$tertiary_index = 'index.html';
if (file_exists($primary_index)) {
header("Location: /$primary_index");
exit;
} elseif (file_exists($secondary_index)) {
header("Location: /$secondary_index");
exit;
} elseif (file_exists($tertiary_index)) {
header("Location: /$tertiary_index");
exit;
} else {
echo "<html><head><title>Under construction!</title></head>";
echo "<body><h1>Under construction!</h1></body></html>";
exit;
}
?>
Selon cet exemple, /cart
doit être un sous-répertoire de DocumentRoot
du VHost en cours.
En savoir plus sur les fonctions PHP utilisées: [1] ; [2] ; [3] .