web-dev-qa-db-fra.com

Quel est le problème avec ma réécriture de mod pour GEOIP en fonction de l'emplacement?

Je suis un peu novice dans modrewrite mais je l’avais utilisé avec succès sur mon serveur auparavant.

J'ai réussi à installer le module sur mon serveur Apache et à tester avec la page de test PHP (le code retour m'a correctement renvoyé). J'ai donc décidé de le tester sur un site et de le rediriger vers une autre page.

GeoIPEnable On
GeoIPDBFile /usr/local/share/GeoIP/GeoIP.dat Standard
GeoIPDBFile /usr/local/share/GeoIP/GeoLiteCity.dat Standard

    RewriteEngine On
RewriteCond %{ENV:GEOIP_AREA_CODE} ^847  
RewriteRule ^$ http://www.teetimelawncare\.com/lawncare\.html$1 [NC,QSA]

Je reçois simplement 500 erreurs de serveur interne à chaque fois. Une idée pourquoi?

EDIT: J'avais des erreurs avec ma ligne AddType x-mapp php5 dans mon fichier .htaccess. Le fait de le supprimer lui permet de fonctionner.

1
Deek

Pour isoler le problème, essayez d’abord sans la redirection. Si cela ne fonctionne toujours pas, assurez-vous que l'utilisateur httpd (par exemple, nobody) dispose d'un accès en lecture aux fichiers de la base de données GeoIP, comme indiqué dans la section Dépannage ici .

Assurez-vous également que chaque ligne de votre fichier . Htaccess ou de la configuration du serveur principal se termine par un nouvelle ligne , et supprimez l'espacement avant. RewriteEngine On.

Enfin, vous pouvez utiliser IndexCache, ce qui réduirait le nombre de recherches et d'accès en lecture/écriture pour un fichier de base de données volumineux tel que GeoIP City - voir l'exemple ici .

2
dan