Cómo instalar Gorg
1.
Introducción
Gorg es un procesador back-end de XSLT para un sitio web basado en XML. Los
ficheros fuente son transformados y servidos de una vez. Los ficheros de
salida y sus dependencias se almacenan en una caché. Sus principales
características son:
- Trabaja con apache, lighttpd o webrick (el servidor propio de ruby)
- Usa caché eficiente.
-
Genera cabeceras HTTP consistentes cuando varios nodos web sirven el mismo
contenido.
-
Implementa su propia compresión (también llamada mod_gzip), esto es, no
depende del servidor web para comprimir su salida.
- Soporta caché en el cliente.
- El XSL procesado puede aceptar y escribir cookies.
-
Proporciona su propio motor de búsqueda (el indexado del sitio será
actualizado sustancialmente en una versión posterior)
Gorg le permite servir su propia copia local de
http://www.gentoo.org. Puede usar un guión cgi o fastcgi con
apache o lighttpd, o incluso usar su propio servidor web independiente. Su
nombre es una contracción de Gentoo.org ya que fue creado con
el sitio Gentoo en mente cuando se pensó que se necesitaba un sustituto de
AxKit.
Gorg ha sido probado en x86, amd64, alpha, sparc, ppc, mips y hppa con los
siguientes paquetes:
Listado de Código 1.1: Entorno de prueba. |
>=net-www/apache-2.0.55
>=www-apache/mod_fcgid-1.0.8
>=dev-lang/ruby-1.8.4
>=dev-libs/fcgi-2.4.0
>=dev-ruby/ruby-fcgi-0.8.6
>=dev-libs/libxml2-2.6.23
>=dev-libs/libxslt-1.1.15
>=dev-db/mysql-4.0.26
>=dev-ruby/ruby-dbi-0.0.21
>=dev-ruby/mysql-ruby
|
2.
Instalando Gorg
Defina sus ajustes USE para permitir que apache use o no mod_fcgi
dependiendo como quiera usarlo. El ajuste USE mysql solo se requiere
para el motor de búsqueda integrado.
Importante:
Deberá ajustar las dependencias de su arquitectura usando palabras clave
(keyword). Puede ajustar estar palabras clave en los paquetes necesarios o
aceptar una arquitectura ajena. gorg ha sido instalado y probado en x86,
amd64, alpha, sparc, ppc, mips y hppa.
|
Listado de Código 2.1: Haciendo emerge de gorg |
# emerge -pv gorg
# emerge gorg
|
3.
Configurando gorg
Configurando apache
Nota:
Puede saltarse esta sección si no va a usar apache.
|
Si quiere usar fastcgi (cosa que debería hacer, sin duda), necesitará añadir
-D FCGID a la variable APACHE2_OPTS en
/etc/conf.d/apache2.
A continuación integre las directivas de configuración de apache, presentes
del fichero de configuración ejemplo /etc/gorg/vhost.sample en
sus propias configuraciones vhost, por ejemplo,
/etc/apache2/vhosts.d/10_gorg.conf. Los comentarios en el
fichero de configuración ejemplo le guiarán.
Finalmente, copie o cree un enlace simbólico a los guiones (c)cgi de
/usr/lib/ruby/site_ruby/<ruby-version>/gorg/fcgi-bin/gorg.fcgi
y
/usr/lib/ruby/site_ruby/<ruby-version>/gorg/cgi-bin/{gorg,search}.cgi
en los directorios (f)cgi de su sitio web y compruebe que son
ejecutables. Deberá copiar search.cgi únicamente si va a usa el
motor de búsqueda integrado.
Configurando gorg
Haga una copia del fichero de configuración ejemplo
/etc/gorg/gorg.conf.sample a /etc/gorg/gorg.conf y
edítelo. Los comentarios le ayudarán a definir sus propios
parámetros. Necesitará definir por lo menos el directorio raíz de sus
documentos web.
Si no quiere usar el fichero de configuración por defecto
/etc/gorg/gorg.conf, necesitará definir una variable de entorno
llamada GORG_CONF que apunte al fichero de configuración.
Importante:
Si usa caché, y es recomendable que lo haga, deberá asegurarse de que el
directorio caché definido en su fichero de configuración tiene los permisos
adecuados. Si usa apache, el usuario apache necesita acceso total a ese
directorio.
|
Obteniendo los ficheros que faltan
Asumiendo que va a servir una copia local de CVS, o una copia o enlace
simbólico a ella, necesitará algunos ficheros del directorio
dyn.
Listado de Código 3.1: Obtener los ficheros que faltan |
$ cd /camino/a/su/raíz/de/documentos
/htdocs $ cd dyn
/htdocs $ wget -O news-index.xml http://www.gentoo.org/dyn/news-index.xml?passthru=1
/htdocs $ cd ..
|
Necesitará también hacer las imágenes disponibles para su navegador. El
directorio images está un nivel por encima de
htdocs. Simplemente defina un enlace simbólico a éste y estará
preparado.
Listado de Código 3.2: Cree un enlace simbólico a las imágenes |
/htdocs $ ln -si ../images images
/htdocs $ ls -l
drwxr-xr-x 3 neysx users 128 Sep 14 17:45 css
drwxr-xr-x 31 neysx users 744 Oct 26 00:03 doc
drwxr-xr-x 3 neysx users 544 Nov 2 16:53 dtd
drwxr-xr-x 3 neysx users 168 Nov 3 16:24 dyn
-rw-r--r-- 1 neysx users 1406 Jun 7 2003 favicon.ico
lrwxrwxrwx 1 neysx users 10 Oct 21 22:29 images -> ../images/
-rw-r--r-- 1 neysx users 190 Nov 9 2002 index.xml
drwxr-xr-x 16 neysx users 384 Apr 1 2004 main
drwxr-xr-x 17 neysx users 6960 Nov 3 15:34 news
drwxr-xr-x 8 neysx users 192 Oct 23 14:52 proj
drwxr-xr-x 4 neysx users 96 Sep 17 14:05 security
drwxr-xr-x 3 neysx users 736 Nov 2 16:40 xsl
|
Su CVS local probablemente muestre algunas entradas más, pero al menos las
mencionadas arriba deberían estar disponibles y puestas al día. También
recuerde mantener su directorio images actualizado.
4.
Corriendo Gorg
El servidor web independiente
La forma más sencilla de probarlo, es correr gorg. Debería mostrar
algo como esto:
Listado de Código 4.1: Correr gorg |
$ gorg
Starting the Gorg web server on port 8008
Hit Ctrl-C or type "kill 31479" to stop it
|
Apunte su navegador a http://localhost:8008 y debería ver su
sitio favorito.
Con apache
Reinicie apache (/etc/init.d/apache2 restart) y visite
http://localhost asumiendo que ha instalado su propia estación de
trabajo.
Si usó servidores fastcgi estáticos, debería verlos con top -u apache.
Si esto no funciona, pruebe con el servidor web independiente (teclee
gorg). Si esto tampoco funciona, compruebe su fichero de
configuración /etc/gorg/gorg.conf. Si esto funciona, compruebe
sus ficheros de configuración de apache y sus ficheros de log.
El contenido de este documento, a no ser que se especifique
expresamente, está registrado bajo los términos de la licencia
CC-BY-SA-2.5. Se aplican las
Pautas de
Utilización del logotipo y nombre de Gentoo.
|