Řešení 1:
V distribucích CentOS Linux (a následně RedHat), když nainstalujete balíček httpd (pro Apache 2), vytvoří /var/www
a očekává, že vaši vhosts odkazují na váš webový obsah zde. Výchozí vhost je obvykle vypisován v /var/www/htdocs
a následné weby/aplikace by měly být umístěny do /var/www/sitename
.
Na skutečném umístění by nemělo příliš záležet, ale běžně se zobrazuje /opt/www/sitename
, /var/www/sitename
, nebo jednoduše /opt/www
nebo /var/www
.
Již jste uvedli několik důvodů, proč některá další umístění (například /home
) se k tomu opravdu nehodí.
Osobně preferuji /var/www/sitename
protože je přátelský k Apache a Rails a je celosystémový.
Řešení 2:
Možná budete chtít postupovat podle standardu Filesystem Hierarchy Standard (FHS) a umístit jej do
/srv : Data for services provided by this system
UPRAVIT:
Neumístil bych to do /opt
:
/opt : Add-on application software packages
Jeho účel říká:
/opt je vyhrazeno pro instalaci softwarových balíčků doplňkových aplikací.
Balíček, který se má nainstalovat do /opt, musí najít své statické soubory v samostatném stromu adresářů /opt/ nebo /opt/, kde je název popisující softwarový balíček a je to registrované jméno poskytovatele LANANA.
Nemyslím si, že vyvinutá aplikace je „softwarový balíček“.
Odůvodnění /srv
je
Hlavním účelem specifikace je to, aby uživatelé mohli najít umístění datových souborů pro konkrétní službu a aby bylo možné rozumně umístit služby, které vyžadují jeden strom pro data pouze pro čtení, zapisovatelná data a skripty (jako jsou skripty cgi).
Chápu, že aplikace rails je cgi skript a měl by být umístěn v /srv
.
Řešení 3:
Myslím, že /opt by bylo místo pro aplikaci takhle. Souhlasím s dodržováním FHS, jak navrhuje chmeee, ale nesouhlasím s tím, že aplikace Rails je služba sama o sobě.