2017-09-23 4 views
1

J'ai changé l'hébergement d'un site Web fonctionnant parfaitement, qui était un domaine addon sur un serveur pour un domaine addon sur un autre serveur. Maintenant, les règles de réécriture d'URL ne fonctionnent pas, sauf pour le fichier index.php.RewriteRule ne fonctionnant pas sur le domaine addon sauf pour le fichier index

J'ai les codes suivants dans le fichier .htaccess dont seulement la ligne:

RewriteRule ^p/(.*) index.php?p=$1 [L]

travaille et d'autres ne sont pas. J'ai contacté le fournisseur du serveur et ils ont confirmé que les modules requis pour la réécriture sont correctement installés et qu'il n'y a aucun problème de leur côté.

Quelle est l'erreur dans le code?

RewriteEngine On 
RewriteBase/
RewriteRule ^view/(.*)/(.*)/(.*) view.php?id=$1&sid=$2&adult=$3 [L] 
RewriteRule ^go/(.*)/(.*) go.php?usid=$1&s=$2 [L] 
RewriteRule ^ad/(.*) ad.php?adid=$1 [L] 
RewriteRule ^out/(.*) out.php?sid=$1 [L] 
RewriteRule ^p/(.*) index.php?p=$1 [L] 
RewriteRule ^adcode/(.*) adcode.php?id=$1 [L] 
RewriteRule ^edit/(.*) edit.php?sid=$1 [L] 
RewriteRule ^verify/(.*)/(.*) verify.php?id=$1&verify=$2 [L] 

Répondre

0

Le problème se est résolu par changer les noms de fichiers. Par exemple, j'ai changé tous les noms de fichier en ajoutant le caractère de soulignement _ au début du nom de fichier.

RewriteEngine On 
RewriteBase/
RewriteRule ^view/(.*)/(.*)/(.*) _view.php?id=$1&sid=$2&adult=$3 [L] 
RewriteRule ^go/(.*)/(.*) _go.php?usid=$1&s=$2 [L] 
RewriteRule ^ad/(.*) _ad.php?adid=$1 [L] 
RewriteRule ^out/(.*) _out.php?sid=$1 [L] 
RewriteRule ^p/(.*) index.php?p=$1 [L] 
RewriteRule ^adcode/(.*) _adcode.php?id=$1 [L] 
RewriteRule ^edit/(.*) _edit.php?sid=$1 [L] 
RewriteRule ^verify/(.*)/(.*) _verify.php?id=$1&verify=$2 [L]