Eléphanteau du PHP |
24 Messages
26 janv. 2006, 14:35
(...) réduire l'arborescence de mon site à une seule page : index.php. Avec une règle d'url rewriting, je peux en effet renvoyer toutes mes pages sur une seule et même. (...) Seulement, je me demande si cela ne va pas surcharger mon serveur et mes connexions à la base de données. Est-ce que le fait de tout centraliser peut poser des soucis sur le serveur.
Au niveau du déroulement de ton algo PHP, rien ne va faire évoluer la charge si ce n'est le changement d'architecture (include depuis un controleur frontal), chose quasi-négligeable.
En revanche, si tu as beaucoup de connexions HTTP, la règle de réécriture apache (basée sur de l'expression régulière) peut consommer + ou - CPU à la longue (variable en fonction de la complexité de la règle). D'autre part, si tu utilises une redirection via proxy (tag [P]) il te faudra utiliser le mod_proxy et donc faire attention aux problèmes de sécurité que cela peut engendrer.
Personnellement, j'aime bien le système de redirection par 404 : seul un fichier "index.php" est accessible dans le DocumentRoot et le serveur HTTP est configuré pour rediriger les erreurs 404 vers ce fichier. Ainsi, toute URL autre que l'URL de base fait appel à ton fichier.
Ce système est rapide, il ne faut pas oublier de redéfinir le code d'erreur pour qu'il ne soit plus une erreur et de ce fait accepté par les navigateurs et robots. Tu peux en prime faire du cache en générant tes fichiers statiques et lier ton mécanisme qui décide quelle page afficher à un moteur de recherche [
exemple ].