Entrez une valeur indésirable dans votre, .htaccess
par exemple foo bar
, sakjnaskljdnas
tout mot clé non reconnu par htaccess et visitez votre URL. Si cela fonctionne, vous devriez obtenir un
500 Erreur de serveur interne
Erreur Interne du Serveur
Le serveur a rencontré une erreur interne ou une mauvaise configuration et n'a pas pu terminer votre demande.
Je vous suggère de le mettre peu de temps après RewriteEngine on
.
Puisque vous êtes sur votre machine. Je suppose que vous avez accès au .conf
fichier apache .
ouvrez le .conf
fichier et recherchez une ligne similaire à:
LoadModule rewrite_module modules/mod_rewrite.so
S'il est commenté (#), décommentez et redémarrez apache.
Pour enregistrer la réécriture
RewriteEngine On
RewriteLog "/path/to/rewrite.log"
RewriteLogLevel 9
Mettez les 3 lignes ci-dessus dans votre virtualhost
. redémarrez le httpd.
RewriteLogLevel 9
L'utilisation d'une valeur élevée pour Level ralentira considérablement votre serveur Apache! Utilisez le fichier journal de réécriture à un niveau supérieur à 2 uniquement pour le débogage! Le niveau 9 enregistrera presque tous les détails du réécriture.
METTRE À JOUR
Les choses ont changé dans Apache 2.4:
FROM Mise à niveau vers 2.4 à partir de 2.2
Les directives RewriteLog et RewriteLogLevel ont été supprimées. Cette fonctionnalité est désormais fournie en configurant le niveau de journalisation approprié pour le module mod_rewrite à l'aide de la directive LogLevel . Voir aussi la section de journalisation mod_rewrite.
Pour plus d'informations sur LogLevel, reportez-vous à la directive LogLevel
tu peux accomplir
RewriteLog "/path/to/rewrite.log"
de cette manière maintenant
LogLevel debug rewrite_module:debug
La réponse «Entrez une valeur indésirable» n'a pas fait l'affaire pour moi, mon site continuait à se charger malgré le courrier indésirable entré.
Au lieu de cela, j'ai ajouté la ligne suivante en haut du fichier .htaccess:
Cela vous permettra de savoir rapidement si .htaccess est récupéré ou non. Si le .htaccess est utilisé, les fichiers de ce dossier ne se chargeront pas du tout.
la source
En général, toute modification du .htaccess doit avoir des effets visibles. Si aucun effet, vérifiez vos fichiers apache de configuration, quelque chose comme:
Devrait être remplacé par
Et vous pourrez modifier les directives dans les fichiers .htaccess.
la source
Une méthode plus logique serait peut-être de créer un fichier (par exemple, test.html), d'ajouter du contenu, puis d'essayer de le définir comme page d'index:
Pour la plupart, la règle .htaccess remplacera la configuration Apache où elle fonctionnait au niveau du répertoire / fichier
la source
Pour répondre à la première des trois questions posées, un moyen simple de voir si le fichier .htaccess fonctionne ou non est de déclencher une erreur personnalisée en haut du fichier .htaccess:
Passant à votre deuxième question, si le fichier .htaccess n'est pas lu, il est possible que la configuration principale d'Apache du serveur soit
AllowOverride
définie surNone
. La documentation d'Apache contient des conseils de dépannage pour cela et d'autres cas qui peuvent empêcher le .htaccess de prendre effet.Enfin, pour répondre à votre troisième question, si vous avez besoin de déboguer des variables spécifiques que vous référencez dans votre règle de réécriture ou si vous utilisez une expression que vous souhaitez évaluer indépendamment de la règle, vous pouvez effectuer les opérations suivantes:
Sortez la variable que vous référencez pour vous assurer qu'elle a la valeur que vous attendez:
Testez l' expression de manière indépendante en la plaçant dans une
<If>
directive. Cela vous permet de vous assurer que votre expression est écrite correctement ou qu'elle correspond lorsque vous vous attendez à ce qu'elle:Bon débogage .htaccess!
la source
Si vous avez accès au répertoire apache bin que vous pouvez utiliser,
httpd -M
pour vérifier d'abord les modules chargés.Après cela, des directives simples comme
Options -Indexes
oudeny from all
solidifieront que .htaccess fonctionne correctement.la source
Pour tester vos règles de réécriture htaccess, remplissez simplement l'url à laquelle vous appliquez les règles, placez le contenu de votre htaccess sur la plus grande zone de saisie et appuyez sur le bouton «Test».
http://htaccess.mwl.be/
la source
Pourquoi ne pas mettre des fichiers indésirables dans votre fichier .htaccess et essayer de recharger apache. Si Apache ne démarre pas, vous savez qu'il fonctionne. Supprimez le courrier indésirable, puis rechargez Apache s'il charge les félicitations que vous avez configuré correctement .htaccess.
la source