Site de A à Z — jour 2 Probléme htaccess

Par Sunys, il y a 13 ans


Bonjours en ce moment je suis le tutoriel "créer un Site de A à Z" j'avais jamais fais de .htaccess donc j'ai suivi tous comme le tuto mais il a une erreur qui reviens a chaque fois c'est

**Internal Server Error

The server encountered an internal error or misconfiguration and was unable to complete your request.

Please contact the server administrator at admin@localhost to inform them of the time this error occurred, and the actions you performed just before this error.

More information about this error may be available in the server error log.**

j'ai bien deux fichier.htacces

le premier dans " www\site.htaccess"

voici le code

RewriteEngine On 
RewriteRule(.*) webroot/$1 [L]

le second dans " www\site\webroot.htaccess"

voici le code

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule (.*) index.php/$1 [L]

j'ai bien activer rewrite_module mais sa me fais la même donc la je sais pas du tout

Merci.

19 réponses

homesoftware, il y a 10 ans

Bonjour à vous. Et merci pour vos solutions. Malheureusement cela ne fonctionne pas chez moi. Au bout de quelques secondes j'ai un message d'erreur 500, comme s'il faisait une boucle infinie dont il sort sans résultat.
Pourriez vous m'aider svp ?

Merci d'avance.

ccvf2s, il y a 10 ans

@homesoftware as tu essayé de voir les logs apache, effectivement très souvent tu trouveras ta solution dans tes logs comme suggérer par l'érreur essaye d'ouvrir error.log d'apache et de nous dire ce que tu vois dans les dernières lignes on pourra t'aider de cette manière.

JMERISE, il y a 10 ans

Ou sinon tu fait :

page .htpasswd :

Login:motdepasse

page .htaccess :

AuthName "Page d'administration protégée" AuthType Basic AuthUserFile "tu indique le lien de ta page protéger depuis la racine de t-on site\.htpasswd" Require valid-user

et tu mais c'est 2 fichier dans le dossier qui doit étre protéger.

arcoss 3x, il y a 10 ans

Salut,
pour de probleme de .htaccess, il faut que tu active le module rewrite _module dasn les modules apache

JMERISE, il y a 10 ans

je lais fait mais marche pas

Guillaume_, il y a 13 ans

Pas de réponse ?

Sunys, il y a 13 ans

oui j'ai wamp tu as réussit à réparer ?

Sunys, il y a 13 ans

personne as une idée ?

RedaElkhayat, il y a 13 ans

Salut, essayes de remplacer ça a ton fichier htaccess de la racine

RewriteEngine On
RewriteRule (.*) webroot/$1 [L]

T'as oublié de mettre une petite espace enter le RewriteRule et la règle.

Sunys, il y a 13 ans

ces pas sa :s

Galahaad, il y a 13 ans

Bonjour, j'ai un problème similaire avec le même .htaccess à deux différences près :

1) mon site n'est pas à la racine mais dans un sous répertoire (il y a déjà un site en place sur le serveur où je teste) dois-je modifier quelque chose dans l'un ou l'autre des .htaccess pour en tenir compte? (en cherchant sur un site expliquant la redirection par .htaccess ils semblent dire que non..

2) le message d'erreur que j'obtiens est : No input file specified dès que je tape une URL autre qu'un url existante, comme par exemple si je rajoute un /toto à la fin, au lieux d'avoir le 404.php qui se charge, en ayant fait divers tests, je suis pratiquement certain que le problème vient du .htaccess

avez-vous une idée de l'origine du problème ?

Sunys, il y a 13 ans

tempis je vais teste d'avancer sasn --'

Guillaume_, il y a 13 ans

Vaut mieux

Flo418, il y a 13 ans

activé les bon module genre url rewrite des truc dans le genre ^^ je dis ça je dis rien ^^

Galahaad, il y a 13 ans

bon, j'ai trouvé pour ma part comment corriger le problème, il fallait dans le deuxième .htaccess (celui qui est dans webroot) que j'indique l'url complète du chemin
écrire :
RewriteRule (.*) http://url\_de\_mon\_site/webroot/index.php/$1 [L]
au lieu de :
RewriteRule (.*) /webroot/index.php/$1 [L]

maintenant ça fonctionne

Sunys, il y a 13 ans

gravefield(tous mes module sont activer )

Galahaad(je suis en local et j'ai teste sa en premier)

si je vous envoie mon erreur log vous pouvez voir quelque chose avec ?
j'insiste car je veux vraiment comprendre comment le htaccess fonctionne ^^

Aureroy, il y a 13 ans

Question surposé des milliers de fois
Il faut activer le module rewrite d'apache dans Wamp, sinon, c'est sûrement un problème d'espace ou autre

Xtr3me, il y a 13 ans

Salut,

Je l'ai eu cette erreur pendant un bout de temps avec le code de Grafikart et finalement en avançant dans le tutoriel l'erreur partait et revenait j'ai finalement trouvé une solution à cela:

.htaccess à la racine

Options +MultiViews
RewriteEngine On
RewriteBase /(Dossier racine du site= celui qui contient tout les dossiers webroot,model etc...)
RewriteRule (.*) webroot/$1 [L]

.htacces dans webroot

Options +MultiViews
 RewriteEngine On
 RewriteCond %{REQUEST_FILENAME} !-d
 RewriteCond %{REQUEST_FILENAME} !-f
 RewriteRule (.*) index.php/$1 [L]

Et maintenant ça fonctionne comme sur des roulettes, j'ai finis le tutoriel et j'ai même développé de nouvelles fonctions tout seul.

anthon, il y a 13 ans

Salut tout le monde,
je poste une configuration un poil différente qui peut fonctionner avec uniquement 1 fichier .htaccess à la racine du site, ce sera peut être plus simple pour ceux qui font des erreurs de syntaxe dans l'un ou l'autre des .htaccess.

la condition <IfModule mod_rewrite.c> permet d'éviter les erreur 500
et REQUEST_URI permet d'éviter la boucle en vérifiant l'url

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_URI} !^/webroot/
RewriteRule ^(.*)$ webroot/$1 [L]
</IfModule>

si vous avez une arborescence multi-sites avec uniquement le fichier de configuration apache (default.conf), il faut penser à ajouter le nom du sous dossier web au .htaccess par exemple tuto

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_URI} !^/tuto/webroot/
RewriteRule ^(.*)$ tuto/webroot/$1 [L]
</IfModule>

j'ai trouvé cette méthode intéressante, ça intéressera peut être quelqu'un d'autre également..

à plus.