2

App 1 est sur le serveur A. App 2 est sur le serveur B.Rails 3.1 - partage des actifs précompilés sur les serveurs

App 2 a précompilés actifs et tout fonctionne très bien.

maintenant App 1 veut utiliser le même fichier CSS que App 2 qui se trouve sur le serveur B.

est-il un moyen de faire ce travail?

J'ai essayé Cadre:

config.action_controller.asset_host = "http://assets.example.com" 

dans l'App 1 mais cela ne semble pas aider. Lorsque je vois une image sur App 2, le chemin montre l'URL avec l'empreinte de la cache comme assets/logo-i3q73498g0.png où-comme dans l'application 1 où l'image ne montre pas, le chemin est juste logo.png

Merci!

Répondre

3

La réponse à cette question est probablement de partager le fichier manifeste d'actifs entre les applications. Ce fichier contient des mappages pour les noms de fichiers bruts à ceux portant des empreintes digitales.

Ceci est à public/assets/manifest.yml par défaut. Je suggère que lorsque vous déployez l'application 2, vous ajoutez une tâche pour récupérer le manifeste d'actif de l'application 1, et en supposant que l'application 2 n'a aucun actif compilé (parce que vous avez changé l'hôte), utilisez simplement cette application. Vous devez définir la configuration pour que l'application 2 pense qu'elle a compilé des ressources.

+0

Woohoo, génial! Merci beaucoup. J'ai passé une demi-journée à chercher cela et je n'ai jamais vu une mention à ce sujet. Bonne réflexion! – 99miles

Questions connexes