Solución 1:
En distribuciones CentOS Linux (y posteriormente RedHat), cuando instala el paquete httpd (para Apache 2), crea /var/www
y espera que sus vhosts apunten a su contenido web aquí. El host virtual predeterminado normalmente se descarga en /var/www/htdocs
, y los sitios/aplicaciones subsiguientes deben colocarse en /var/www/sitename
.
La ubicación real no debería importar mucho, pero es común ver /opt/www/sitename
, /var/www/sitename
, o simplemente /opt/www
o /var/www
.
Ya ha explicado algunas de las razones por las que algunas de las otras ubicaciones (como /home
) no son realmente adecuados para esto.
Personalmente, prefiero /var/www/sitename
ya que es amigable con Apache y Rails, y es para todo el sistema.
Solución 2:
Es posible que desee seguir el Estándar de jerarquía del sistema de archivos (FHS) y colocarlo en
/srv : Data for services provided by this system
EDITAR:
Yo no lo colocaría en /opt
:
/opt : Add-on application software packages
Su propósito dice:
/opt está reservado para la instalación de paquetes de software de aplicación complementarios.
Un paquete que se instalará en /opt debe ubicar sus archivos estáticos en un árbol de directorio /opt/ o /opt/ separado, donde se encuentra un nombre que describe el paquete de software y es el nombre registrado de LANANA del proveedor.
No creo que una aplicación desarrollada sea un 'paquete de software'.
La justificación de /srv
es
El propósito principal de especificar esto es para que los usuarios puedan encontrar la ubicación de los archivos de datos para un servicio en particular, y para que los servicios que requieren un solo árbol para datos de solo lectura, datos de escritura y secuencias de comandos (como secuencias de comandos cgi) puedan ubicarse razonablemente.
Entiendo que una aplicación Rails es un script cgi y debe colocarse en /srv
.
Solución 3:
Creo que /opt sería el lugar para una solicitud como esto. Estoy de acuerdo con seguir el FHS como lo sugiere chmeee, pero no estoy de acuerdo con que una aplicación de Rails sea un servicio per se.