2011-08-28 8 views
10

Estoy en un servidor web compartido, y tengo apache2 instalado localmente, por lo que puedo configurarlo de la manera que lo necesite. ¿Cuál es la forma más compatible para implementar una aplicación yesod? Puedo configurar mi apache2 como proxy para Warp. ¿Esta sería la mejor configuración? ¿O debería ir con FastCGI?¿Cuál es la forma recomendada de implementar Yesod?

También agradecería detalles sobre cómo configurar todo. Me refiero a cómo escribir un controlador de solicitudes, si lo necesito, cómo debería ser VirtualHost de apache, etc., porque soy nuevo en Yesod.

Respuesta

5

De acuerdo con the Yesod Book, Warp con un proxy inverso es el enfoque recomendado, pero las diversas otras opciones de implementación también se describen con gran detalle allí.

2

Keter es realmente fácil de usar. Hay más documentación en la página GitHub. Está diseñado para Yesod y el binario yesod lo admite porque puede ejecutar yesod keter para producir una versión incluida de su aplicación que se inserta en /opt/keter/incoming para facilitar las actualizaciones.

Keter se encuentra en la parte delantera, por lo que no necesita Apache o nginx; puede manejar SSL para https.

Sin embargo, si necesita un servidor front-end más completo, parece ser una mala idea ejecutar Apache o nginx en frente de Keter, y es mejor invertir el http proxy directamente en el binario Yesod. Sólo se ejecute la aplicación en una especie de demonio (o systemdupstart) que especifica el número de puerto en la línea de comandos

MyApplication Development -p 3000

y luego configurar Apache para proxy inverso a 3000 en las conexiones correspondientes.

Cuestiones relacionadas