2009-01-16 9 views
3

Je voudrais que mod_rewrite dans un fichier .htaccess soit lié à une base de données mysql pour me fournir des informations de mappage.mod_rewrite, .htaccess connexion à la base de données mysql

Plus précisément, je me sers d'une base de code unique pour héberger plusieurs sites so..if utilisateur demande une image, par exemple: http://www.example.com/images/car.jpg

cela va frapper mon serveur et de nombreux autres sites seront également en tapant ce dossier/images, j'ai donc besoin d'Apache pour répondre avec: /home/example/pubic_html/images/7383/car.jpg

Notez l'injection de "7383" qui est un exemple de site id pour cet utilisateur. Fondamentalement, je veux mapper entre example.com et 7383 en utilisant la base de données mysql, puis obtenir le bon fichier à l'utilisateur.

Des idées?

Répondre

3

Vous pouvez utiliser un script comme rewrite map pour obtenir le chemin réel. RewriteMap est la fonctionnalité Apache correcte à utiliser.

+0

Été là. C'est fait. Fonctionne parfaitement. –

2

Merci Gumbo.

Somethings à noter que je travaillais à travers ceci:

  • RewriteMap va dans votre config Apache plutôt que dans le fichier .htaccess
  • j'ai écrit un script pour créer un fichier texte de mappage qui effectuera la cartographie que j'avais ci-dessus. Il vide essentiellement la base de données tout ce qui est nécessaire - puisque le mien ne change pas à chaque minute, je peux simplement lancer une sauvegarde périodique dans ce fichier texte chaque fois que le mappage est ajouté ou modifié.

Fonctionne comme un champion. Merci Apache pour ce merveilleux outil.

Questions connexes