Aller au contenu

Sujets conseillés

Posté

Bonsoir,

J'ai un mutualisé, et j'aimerai mettre en place un htaccess.

Mes tentatives se bornent pour l'instant au résultat 500 Internal Server Error.

Voilà la bête (j'ai dit ce que je voulais faire en précédant ces infos par #) :

RewriteEngine On
RewriteCond %{HTTP_REFERER} !^http://ndd.com/.*$ [NC] #Quand on arrive sur le site par 'ndd.com/'
RewriteCond %{HTTP_REFERER} !^http://ndd.com.*$ [NC] #Quand on arrive sur le site par 'ndd.com'
RewriteRule ^/$ http://www.ndd.com/ [L] #On est redirigé vers 'www.ndd.com/'
DocumentRoot home.html #Page d'index : home.html
RewriteRule   ^home.html$   /  [L] #Je veux pas qu'on accède à la page home.html : si on veut la voir on va à la racine

Quelles erreurs fais-je :nono: ?

Merci,

Loupilo.

Posté

Salut Loupilo,

Si tu veux afficher home.html lorsque l'URL ne comprend que le répertoire, il faut utiliser la directive suivante:

DirectoryIndex home.html index.php index.html

Les deux derniers arguments ne sont pas indispensables, mais cette règle dit de présenter home.html par défaut s'il existe, et en son absence index.php ou index.html (dans cet ordre).

La directive DocumentRoot n'est pas autorisée, et doit générer l'erreur 500 ;)

Perso, j'écrirais ce .htaccess de cette manière:

DirectoryIndex home.html index.php index.html

RewriteEngine on
RewriteCond %{HTTP_HOST} !www.ndd.com$
RewriteRule (.*) http://www.ndd.com/$1 [R=301,L]

RewriteRule ^home.html$ / [R=301,L]

Posté

DocumentRoot au lieu de DirectoryIndex :nono:

Je vieillis :lol:

Sinon, avec ton code Dan, j'ai (quand je cherche http://ndd.com dans Firefox) :

Limite de redirections dépassée. Ceci est peut-être dû à un cookie bloqué.

Quand j'enlève

RewriteEngine on

RewriteCond %{HTTP_HOST} !www.ndd.com$

RewriteRule (.*) http://www.ndd.com/$1 [R=301,L]

Ça passe, je démarre bien sur home.html.

Mais quand je cherche http://ndd.com/home.html, je ne suis pas redirigé à la racine :(

Des pistes ?

Merci,

Loupilo.

Posté

J'ai un peu changé mes plans (mais ce que je demande plus haut est toujours valable :P)...

Mais d'abord, comment faire pour que :

DirectoryIndex indexs.php index.php index.html

Ne retourne pas http://ndd.com/indexs.php mais http://ndd.com/ (que ce soit transparent, en somme) ?

De plus, j'aimerai que quand on vient de http://ndd.com, la page d'index ne soit plus indexs.php mais index.php.

RewriteEngine on

RewriteCond %{HTTP_HOST} ^http://www.ndd.com/.*$ [NC]

RewriteRule ^/indexs.php$ http://www.ndd.com/index.php [L]

Pas de résultat : je continue à avoir indexs.php en index...

Merci pour votre aide,

Loupilo

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...