Ubicación preferida para ejecutables cgi en Lion Server

2

Esta pregunta se relaciona con el uso de un servidor Lion solo para pruebas y creación de prototipos, por lo que no necesito varios sitios que alojen dominios separados. Todos mis proyectos tienen directorios en el directorio raíz, no en subdirectorios "Sitios" separados.

En Lion Server, Apple ha eliminado la disposición de directorios anterior de:

/ Library / WebServer / CGI-Executables [con alias como cgi-bin]

/ Library / WebServer / Documents [con alias como directorio raíz]

Ahora, el servidor web es simplemente:

/ Library / Server / Web / Data / Sites / Default

Después de que instalé Lion Server, Apache todavía estaba configurado con cgi-bin con alias para / Library / WebServer / CGI-Executables y el directorio raíz para / Library / WebServer / Documents. Cambié este último en la sección Web de Lion's Server.app a / Library / Server / Web / Data / Sites / Default.

Me gustaría deshacerme de / Biblioteca / Servidor web. No puedo encontrar ninguna referencia a un directorio preferido / recomendado para mis ejecutables. Estoy pensando: / Library / Server / Web / Data / Exec [con alias en la configuración de Apache como cgi-bin o lo que sea]

Estoy acostumbrado a tener todos mis ejecutables en un solo lugar, y generalmente comparten muchos módulos en común, por lo que no estoy dispuesto a poner un directorio cgi en el directorio de cada proyecto.

Sugerencias? ¿Mejores prácticas actuales?

Gracias.

    
pregunta Bruce Van Allen 09.08.2011 - 04:54

3 respuestas

1

Como OS X es un sistema basado en Unix, puede usar la estructura de archivos estándar de Unix para eso.

En general, la mayoría de las distribuciones unix / linux usan / var / www / para el almacenamiento del servidor web, podría imaginar algo como / var / www / html para páginas y medios y / var / www / cgi-bin para ejecutables cgi.

Hay otras ubicaciones disponibles (por ejemplo, / srv), consulte esta lista en Wikipedia para obtener una explicación sobre el directorio. estructura (si es necesario)

    
respondido por el Benjamin Dubois 15.08.2011 - 16:36
0

Mi preferencia sería colocar ejecutables CGI comunes en todo el sistema en /Library/Server/Web/Data/Exec

Me vino a la mente algunos conceptos pensando en qué carpeta podría ser mejor:

  1. Evite almacenar mi CGI entre el sistema CGI entregado por Apple.
  2. Evite almacenar mi CGI en una carpeta donde el administrador del servidor y el buscador se hayan ocultado de forma predeterminada.

    De menor importancia son las acciones tomadas por Apple para dejar de enviar o seguir ocultando algunas carpetas de la vista (estoy feliz de romper con el liderazgo del proveedor, pero generalmente necesito una buena razón para hacerlo)

  3. No cambie la ubicación de /Library/WebServer/CGI-Executables de Snow Leopard (el principio del administrador de sistemas perezoso: ¿por qué cambiar todo lo que no tiene que hacer)?

  4. Menos esfuerzo, si tengo que arriesgarme a algo, menos cambio es mejor.

Parece claro que /Library/Server/Web/Data/Sites contendría datos que el servidor web serviría de manera diferente según las necesidades de cada sitio. Por lo tanto, si mi sitio Orange tenía un CGI que solo estaba destinado a ese sitio, podría almacenarlos en /Library/Server/Web/Data/Sites/Orange/Exec en lugar de en la ubicación "predeterminada".

No veo una buena razón para mantener a /Library/WebServer , ya que estaré editando mi archivo de configuración de Apache para agregar mis sitios, y supongo que veremos un cambio en una versión de puntos y gané No hay que adivinar.

Desecharía cualquier carpeta que estuviera oculta por defecto en Finder y Server Manager, así que para mí /private estaría fuera. No estoy diciendo que sea incorrecto que alguien almacene cosas allí, especialmente si le ahorra trabajo o capacidad intelectual al reutilizar la estructura de código de otro sistema operativo UNIX que no emplea la estructura de directorios única /System y /Library de Mac OS X.

    
respondido por el bmike 15.08.2011 - 17:34
0

Respondiendo a mi propia pregunta en caso de que la conclusión no fuera clara. Nadie ha aclarado por qué Apple cambió la estructura de directorios del servidor web en el servidor OS X Lion (& Mountain Lion). Sin embargo, para mí, la pregunta más importante era si había una ubicación de "mejores prácticas" para los ejecutables web, o una ubicación "preferida", como lo expresó @bmike. Mi conclusión de los diversos comentarios útiles y de mis propias pruebas es que la elección de la ubicación es arbitraria y, por lo tanto, lo que cuenta como la mejor práctica es ubicar los archivos ejecutables de la web en el lugar en el que mejor sirven su sitio, siguiendo los criterios y las sugerencias mencionadas por los comentaristas. .

Para mí, mi propio servidor es solo un paso en el camino hacia la ubicación final de mis cosas en el servidor de otra persona o en algún ISP. Así que cada compilación crea dos configuraciones distintas: una para la estructura de directorios de mi servidor de prueba (ahora Mountain Lion) y la otra para la estructura de directorios donde se implementará la aplicación. Todo lo demás es lo mismo.

Así que configuré una estructura de directorios para mi servidor web que facilita el seguimiento de mis proyectos y registre sus rutas en mi sistema de compilación. Eso y el alias de estilo Apache (es decir, usar 'cgi-bin' como alias para el directorio de ejecutables) significa que realmente no miraré hacia atrás ahora que mi propia estructura de directorios está en su lugar. Acabo de construir la aplicación y aterriza en el lugar correcto para ejecutarse en mi servidor. Así que esa es la respuesta para mí.

En un servidor de producción, la mejor práctica probablemente incorporaría las sugerencias de los comentaristas de cambios mínimos, sorpresas mínimas para un mantenedor posterior y persistencia a través de las actualizaciones del sistema. Gracias a todos.

    
respondido por el Bruce Van Allen 24.06.2013 - 18:02

Lea otras preguntas en las etiquetas