2009-09-20 6 views
1

de Mon site gère actuellement URL comme celui-ci ...Dois-je utiliser mod_rewrite pour les URL de mon site?

/?p=home 
/?p=profile&userid=1 
/?p=users.online 
/?p=users.online&page=23 
/?p=mail.inbox 
/?p=mail.inbox&page=12 

... et ainsi de suite, il y a probablement au moins 120-150 pages différentes, sur mon site une page est construit comme celui-ci,

index.php comprend un fichier de configuration principal qui comprend alors les fichiers fonction/classe en elle
index.php comprend alors un fil d'en-tête e
index.php comprend le fichier de la page qui est de l'url? p = pagename
index.php comprend alors un fichier de pied de page

C'est ainsi que chaque page sur mon le site est compilé, à travers la page d'index comme ça et j'ai réfléchi/pensé à nettoyer les URL comme je suis en train de réécrire/restructurer la plupart de mes codes de sites en ce moment, c'est le moment idéal pour le faire fais le. Ce que je veux dire par cleanning est l'emploi mod-rewrite de sorte que la structure de l'URL regarderait ci-dessus peut être réécrite de l'URL ...

/home 
/users/1 //user ID might switch to use username as well 
/users/online 
/users/online/23 or /users/online/page/23 
/mail/inbox 
/mail/inbox/12 

Alors tout d'abord est-il des écroulements à le faire, est-ce qu'il créer beaucoup plus de travail de traitement car il utilise mod_rewrite?

Aussi serait-il difficile d'écrire la regex ou tout ce qui est nécessaire pour correspondre aux noms de fichiers dans le format que je montre ci-dessus, je liste seulement quelques pages mais il y aurait au moins 100 pages URL différentes blogs, bulletins, forums, toutes sortes de choses

+2

Pas de réponse, mais du point de vue de vos utilisateurs, * s'il vous plaît * faites ceci: Toute URL avec une chaîne de requête est inaccessible selon la spécification. Donc, votre structure actuelle force un re-GET à chaque fois. –

+0

@ T.J. Crowder: Selon quelle spécification? S'il vous plaît prouver cette affirmation. – Gumbo

+0

@Gumbo: La spécification HTTP, section 13.9 par exemple - http://www.faqs.org/rfcs/rfc2616.html –

Répondre

8

Absolument. C'est l'un des principaux objectifs d'Apache, donc il a été conçu pour le faire très efficacement. En fait, je t'aurais préféré utiliser cette méthode.

  1. Il fait des URL plus propres pour les visiteurs
  2. Il est fantastique pour le référencement
  3. Il rend le site plus professionnel
  4. Il est plus facile pour les utilisateurs de deviner URL si elles tentent de trouver une certaine page sans traversant réellement votre site pour le trouver.

Il n'y a pas et écroulements une tonne d'avantages à utiliser cette structure d'URL. Fonce!

+0

Oups. Le "non" était une réponse à sa question "crée-t-il plus de travail de traitement?" Fixe - merci. – BraedenP

+0

merci pour la réponse, 1 chose que je suis incertain de beaucoup de mes sections que j'ai pagination comme page = 12 donc je ne savais pas si ce woyuld causer un problème quand il n'y a pas de pagination pour cette page, par exemple si vous sont sur la page 1 alors il ne montre aucune donnée de pagination dans l'url – JasonDavis

+0

jason: Obtenez de l'aide avec vos problèmes regex spécifiques lorsque vous les rencontrez. Allez mettre en œuvre maintenant ... De plus, il est FACILE d'aller de blah/whatever/p # à votre chaîne de requête ... –

Questions connexes