2009-05-13 5 views
1

La tâche: Servir les fichiers situés dans un dossier local sur le serveur aux clients via http/80. En fin de compte, je prévois d'émuler le dossier sur le client mais cela ne concerne pas ma question. Par conséquent, il existe une application Rails existante (repos based/xml) sur ce serveur que les clients utiliseraient conjointement avec ces fichiers.Demande de conseil: Servir le dossier local via les rails (ou non?)

Je ne ai pas besoin de logique à faire sur les fichiers soit sur le téléchargement ou télécharger donc je me demande:

  1. Ai-je besoin d'impliquer mon application Rails pour servir ces fichiers?
  2. Le serveur Web ne doit-il pas gérer uniquement le lien entre les fichiers locaux et les clients?
  3. Est-ce que cette nouvelle intégration de Rails Metal ou Rack ferait partie de la solution? (Pas familier avec soit)

Je pense que la chose importante est ici http sur le port 80.

Merci pour tous les pointeurs ou des conseils en la matière, acclamations, Max

Je sais que, avec Le bon investissement de temps que je pourrais regarder tout cela pendant quelques heures et le comprendre, mais je suis très très occupé me sauve beaucoup de temps.

Répondre

0

Mettez les fichiers dans un sous-répertoire du répertoire « public » - comme avec les feuilles de style et javascripts

+0

sons sexy. cependant je ne peux pas changer l'emplacement de mon dossier mais je garderai ceci dans l'esprit, sous linux je pourrais facilement diriger mon dossier de dossiers avec le dossier public. Voici les fenêtres, je vais y jeter un coup d'œil. Merci pour l'aide. – ximus

0

vous pouvez utiliser X-Sendfile si vous utilisez Apache ou Lighty (voir post this blog). Nginx prend en charge X-Accel-Redirect. Ces deux approches permettront à votre serveur Web d'envoyer directement le fichier sans impliquer votre application rails.

1

Apache? Ajoutez simplement une autre section <Directory> à votre configuration pour l'application Rails:

Alias /static-files /path/to/the/static-files 
<Directory /path/to/the/static-files> 
    Order allow, deny 
    Allow from all 
    # whatever else you need, Options, AllowOverride, etc. 
</Directory> 
Questions connexes