with site run pages page new examples blog ruby-on-rails blogs jekyll

ruby on rails - site - ¿Pueden una aplicación Rails y un blog Jekyll vivir juntos?



jekyll with bundle (4)

Tengo una aplicación Rails y quiero agregar una función de blog; Mi idea es usar Jekyll, que es una excelente herramienta de blog, solo necesito saber si es posible usar http://my.app.com/blog como URL (sabiendo que Jekyll ejecutará su propio proceso de servidor con su propia url).

¿Alguien sabe de una manera de lograr esto? Sería genial poder hacerlo. ¡Atentamente!


... solo tiene que averiguar si es posible usar http://my.app.com/blog como URL (sabiendo que Jekyll ejecutará su propio proceso de servidor con su propia URL).

Si bien el servidor web de jekyll funciona, probablemente sea más fácil, más sencillo y más seguro utilizar el servidor web de la aplicación Rails para servir todas las páginas.

La forma más sencilla de hacer lo que desea es hooking una invocación de jekyll al repositorio de git de su servidor, por lo que el contenido estático de jekyll se agrega automáticamente al directorio public/blog/ su aplicación de Rails cada vez que se produce un impulso.

  1. Cree un enlace de enlace de símbolos llamado public/blog dentro de public carpeta public su aplicación. Haga que apunte a la carpeta _site generada de su repositorio jekyll.
  2. En el repositorio de git que controla el contenido del blog jekyll, agregue un enlace hooking que haga lo siguiente:

    #!/bin/sh rm -rf _site jekyll

Esos son los pasos básicos. Es posible que deba configurar los permisos de lectura correctamente, ignorar el / blog / link si está usando un SCM (como debería) y automatizar la creación del enlace si está usando Capistrano o Vlad para la implementación.

Hay otras alternativas, como usar una carpeta real en lugar de un enlace simbólico y hacer que jekyll genere cosas directamente allí, pero creo que la que estoy presentando es la más limpia.


¿Estaría usando nginx para revertir-proxy la aplicación Rails? Si es así, debería poder simplemente crear una excepción para que /blog sea ​​servido directamente por nginx en lugar de reenviarlo a Rails.



Tuve el mismo problema hace unas semanas. Si realmente tienes que usar Jekyll, creo que la mejor solución es usar la ya mencionada gema de https://github.com/zbruhnke/bloggy .

Sin embargo, no estaba satisfecho con esta solución, porque todavía tiene que duplicar o sincronizar muchas cosas como plantillas, rutas, hojas de estilo, etc. Así que decidí implementar mi propia funcionalidad simple de blog tipo Jekyll en Rails.

Puede encontrar mi artículo que describe la implementación aquí: Cree un blog simple similar a Jekyll en su aplicación Rails 4 .