2010-08-30 8 views
0

J'ai une application qui permet aux utilisateurs d'ajouter leurs propres domaines et de les transférer vers un CNAME particulier pour qu'il fonctionne avec notre application.Recharger l'application Apache à partir de Rails

Pour ma part, j'ai juste besoin d'ajouter un ServerAlias ​​pour le domaine dans mon fichier vhost et de recharger l'apache. Je comprends que l'application rails n'aura pas les privilèges nécessaires pour recharger Apache.

Alors, quelle est la meilleure et la plus sûre façon d'accomplir ceci - le rechargement?

Merci, Imran

+1

Il vaut peut-être mieux utiliser mod_rewrite pour quelque chose comme ça. Alors vous n'auriez pas besoin de redémarrages réguliers, qui sont mauvais. –

+0

Je comprends, mais mod_rewrite n'est pas l'option ici - au moins dans la mesure où je peux penser. Ce rechargement ne redémarre pas, et il ne sera pas cohérent. Peut être quelques fois dans tout le mois. Mais ils doivent être en temps réel à mesure qu'un nouveau domaine est ajouté. Puis-je ajouter le www-data à sudoers pour exécuter une commande particulière ou exécuter un certain script bash - bien sûr, ce script serait apache reload. – Saim

+0

Que diriez-vous de créer un démon pour rechercher des changements dans le dossier sites-enabled/available, et de déclencher le rechargement apache comme n'importe quel fichier est changé. Si c'est une option faisable, est-ce que quelqu'un pourrait me faire passer à travers le démon - étape par étape, comme je n'ai jamais travaillé avec ça auparavant? :) – Saim

Répondre

0

Je pense que vous devriez prendre * .your.domain puis faire une détection de domaine (y compris 404 si le domaine est invalide) dans votre application Rails.