Je suis assez nouveau pour mod-réécritures, et je vais avoir du mal à obtenir ce droit:Mod Rewrite Débutant dans CodeIgniter
Je voudrais http://myurl.com/special et http://www.myurl.com/special à la fois rediriger vers http://myurl/index.php/special sans changer l'URL pour la visiteur dans leur navigateur.
actuellement, mon .htaccess ressemble à ceci, pour supprimer www des URL
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase/
RewriteCond %{HTTP_HOST} ^www.myurl.com [NC]
RewriteRule ^(.*)$ http://myurl.com/$1 [L,R=301]
</IfModule>
j'ai essayé un tas de choses différentes pour rediriger l'URL spéciale, mais rien n'a fonctionné pour moi jusqu'à présent, chacun avec un résultat indésirable différent. S'il vous plaît laissez-moi savoir si vous avez une idée de ce que je peux ajouter ici!
J'ai essayé ceci:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase/
RewriteRule ^special$ /index.php/special$1 [NC]
RewriteCond %{HTTP_HOST} ^www.myurl.com [NC]
RewriteRule ^(.*)$ http://myurl.com/$1 [R=301]
</IfModule>
Cela fait redirigent http://myurl.com/special au contrôleur par défaut, et fait http://www.myurl.com/special redirigent à http://myurl.com/index.php/special et change l'URL dans le navigateur. Aucun d'entre eux n'a raison, même si le second est plus proche de ce dont j'ai besoin.
Hey Brandon, merci pour la réponse rapide. La raison pour laquelle j'avais mon fichier .htaccess était que toutes les demandes à http://www.myurl.com redirigeaient vers http://myurl.com. Ce que j'ai besoin est pour que cela continue, mais en plus d'avoir toutes les demandes à http://myurl.com/special rediriger vers http://myurl.com/index.php/special. Plus d'aide vous pouvez fournir en faisant cela? J'ai essayé de modifier le htaccess et les fichiers de routes comme vous l'avez suggéré, mais cela n'a pas fonctionné. l'URL myurl.com/special a une page 404 Not Found. – itwasthewind
J'ai réalisé que je n'avais pas défini l'htaccess exactement comme vous l'avez mentionné, et j'ai essayé, mais maintenant toute URL qui n'a pas index.php (comme myurl.com/special) montre juste le contrôleur par défaut. Une idée de pourquoi cela pourrait être? – itwasthewind
avec le htaccess il est configuré pour faire à la fois myurl.com/index.php/special et myurl.com/special à la même page juste faire urls cleaner. mais je viens de réaliser ce qui se passait je suis tellement désolé je n'ai pas lu ça juste enlever la route que vous avez ajouté et cela fonctionnera parfaitement je suis désolé je pensais que vous vouliez avoir myurl.com/special aller à la page par défaut le htaccess l'aurait fait tout le long je suis désolé je devrais l'avoir lu de plus près laisser l'htaccess seul et juste enlever l'itinéraire que vous avez ajouté. laissez-moi savoir si cela a fonctionné. – BrandonS