2010-02-06 7 views
0

essaie de faire la règle de réécriture pour cela:
http://website.com/checkreg/34324234 < --- ancienne URL Lieude ModRewrite question

à ceci: http://website.com/chkreg.php?checkreg=34324234 < --- Nouvelle adresse URL

J'ai essayé la suivant, mais il provoque un message d'erreur 500, je ne sais pas assez sur ModRewrite pour comprendre le problème.

 

# BEGIN WordPress 
<IfModule mod_rewrite.c> 
RewriteEngine On 
RewriteBase/
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^checkreg/([^/]*)$ /chkreg.php?checkreg=$1 [L] 
RewriteRule . /index.php [L] 

</IfModule> 

# END WordPress 
 
+0

500 messages semble que vous avez une erreur dans votre programme chkreg.php . Est-ce qu'il fonctionne correctement si vous y accédez avec l'URL non réécrite? – bmb

+0

Je peux accéder à website.com/chkreg.php?checkreg=45345345 directement, sans problème, mais quand je vais sur website.com/checkreg/34324234, j'obtiens une erreur 500. Je vérifie les logs maintenant. Merci pour l'aide. – Brad

+0

Cela ressemble à un problème de rewriteEngine. Vous pouvez essayer de supprimer la directive rewriteEngine on, pour essayer (si elle est déjà activée) mais je n'y pense pas beaucoup. Mais que dit le journal des erreurs? – Aif

Répondre

1

Vous dites que vous voulez réécrire de http://website.com/chkreg.php?checkreg=34324234 à http://website.com/checkreg/34324234, mais votre règle de réécriture fait le contraire.

Utilisez ceci:

RewriteRule ^chkreg.php?checkreg=(.*) /checkreg/$1 [L] 

Edit: Si vous avez besoin de plus amples informations de débogage à partir mod_rewrite puis ajoutez ce qui suit:

RewriteLog /your/path/rewrite.log 
RewriteLogLevel 3 
+0

Je reçois toujours une erreur 500 avec votre correctif, mais merci pour me disant que c'était à reculons. J'ai utilisé un site Web de générateur de .htaccess pour le faire ..: P – Brad

+0

Je veux actuallement réécrire de http://website.com/checkreg/34324234 à http://website.com/chkreg.php?checkreg=34324234 parce qu'il Il y a beaucoup de copies du logiciel qui pointent vers l'ancien checkreg. – Brad

+0

Ensuite, votre règle d'origine semble correcte. Vous devriez vérifier les journaux de réécriture pour voir ce qui se passe. Êtes-vous capable d'utiliser le checkreg/34324234 directement? –