Gentoo Logo

Guida all'installazione di Gorg

Indice:

1.  Introduzione

Gorg è un processore di backend XSLT per un sito web basato su XML. I file sorgenti XML vengono trasformati e serviti al volo. I file di output e le loro dipendenze vengono memorizzati nella cache. Le sue caratteristiche principali sono:

  • Funziona con apache, lighttpd o webrick (il server web di ruby)
  • Usa un sistema efficiente di caching
  • Genera intestazioni HTTP coerenti quando più nodi web forniscono lo stesso contenuto
  • Implementa un proprio sistema di compressione (alias mod_gzip), quindi non si appoggia al server web per comprimere il proprio output
  • Supporta il caching su lato client
  • Il proprio XSL può accettare e scrivere cookies
  • Fornisce un proprio motore di ricerca (l'indicizzazione del sito verrà sostanzialmente aggiornata in una versione futura)

Gorg consente di distribuire la propria copia locale di http://www.gentoo.org. Può usare sia script cgi che fastcgi con apache o lighttpd, oppure il proprio server web integrato. Il suo nome è l'abbreviazione per Gentoo.org perché è stato creato pensando al sito di Gentoo quando c'è stato bisogno di trovare un sostituto per AxKit.

Gorg è stato testato su x86, amd64, alpha, sparc, ppc, mips & hppa con i seguenti pacchetti:

Codice 1.1: Ambiente di test

>=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
(Nel caso improbabile che si voglia sperimentare il motore di ricerca di gorg)
>=dev-db/mysql-4.0.26 (fino a e incluse le versioni 5.*)
>=dev-ruby/ruby-dbi-0.0.21
>=dev-ruby/mysql-ruby

2.  Installazione di Gorg

Definire le proprie USE flag per installare apache con o senza il supporto a mod_fcgi, in base all'uso che se ne vuole fare. La USE flag mysql è richiesta solo per il motore di ricerca integrato.

Importante: Potrebbe essere necessario aggiungere una keyword per alcune dipendenze sulla propria architettura. È possibile aggiungere una keyword per i pacchetti richiesti oppure accettare una architettura diversa. gorg è stato installato e testato su x86, amd64, alpha, sparc, ppc, mips & hppa.

Codice 2.1: Emergere gorg

(Verificare che le dipendenze siano disponibili per la propria architettura)
# emerge -pv gorg

(Installare gorg)
# emerge gorg

3.  Configurazione di Gorg

Configurazione di apache

Nota: Si può saltare questa sezione se non verrà utilizzato apache.

In caso si voglia utilizzare fastcgi, che è comunque consigliato, bisogna aggiungere -D FCGID alla variabile APACHE2_OPTS nel file /etc/conf.d/apache2.

Successivamente, integrare le direttive di configurazione per apache dal file di esempio /etc/gorg/vhost.sample nella propria configurazione per i vhost, ad esempio: /etc/apache2/vhosts.d/10_gorg.conf. I commenti nel file di configurazione di esempio sono di aiuto.

Infine, copiare o creare un link simbolico agli script (c)cgi da /usr/lib/ruby/site_ruby/<ruby-version>/gorg/fcgi-bin/gorg.fcgi e /usr/lib/ruby/site_ruby/<ruby-version>/gorg/cgi-bin/{gorg,search}.cgi nelle cartelle (f)cgi del proprio sito web e verificare che siano eseguibili. È consigliabile copiare search.cgi solo nel caso in cui si desidera utilizzare il motore di ricerca integrato.

Configurazione di gorg

Creare una copia del file di configurazione di esempio /etc/gorg/gorg.conf.sample chiamata /etc/gorg/gorg.conf e modificarlo. I commenti sono di aiuto per definire i propri parametri. È necessario come minimo definire la cartella radice per i documenti web.

Se non si vuole utilizzare il file di configurazione predefinito /etc/gorg/gorg.conf, è necessario definire la variabile d'ambiente chiamata GORG_CONF che punta al file di configurazione.

Importante: Se si desidera utilizzare la cache, ed il suo uso è raccomandato, è bene accertarsi che la cartella di cache definita nel file di configurazione abbia i permessi corretti. Se si sta usando apache, l'utente apacha ha bisogno dell'accesso totale a quella cartella.

Aggiungere i file mancanti

Supponendo di voler servire una copia locale di CVS, o una sua copia, o dei link simbolici ad essa, è necessario scaricare alcuni file dalla cartella dyn.

Codice 3.1: Aggiungere i file mancanti

(Entrare nella cartella htdocs)
$ cd /percorso/cartella/radice/documenti
/htdocs $ cd dyn
/htdocs $ wget -O news-index.xml http://www.gentoo.org/dyn/news-index.xml?passthru=1
/htdocs $ cd ..
(Eseguire lo stesso comando per qualunque altro dato che può risultare necessario
dalla cartella /dyn directory)

C'è anche la necessità di rendere le immagini disponibili al browser. La cartella images si trova un livello sopra htdocs. Basta definire un link simbolico e si è pronti a partire.

Codice 3.2: Creare un link simbolico alle immagini

/htdocs $ ln -si ../images images

(Dovrebbe apparire in questo modo:)
/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

Nel CVS locale probabilmente appariranno delle voci in più, ma quelle citate in precedenza dovrebbero essere disponibili e mantenute aggiornate. Ricordarsi anche di mantenere la cartella images così com'è.

4.  Avviare Gorg

Il server web integrato

Il modo più semplice per provarlo è eseguire gorg. Dovrebbe apparire qualcosa come:

Codice 4.1: Avviare gorg

$ gorg

Avvio del server web Gorg sulla porta 8008

Digitare Ctrl-C oppure "kill 31479" per fermarlo

Puntare il browser su http://localhost:8008 e dovrebbe essere possibile visualizzare il proprio sito preferito.

Con apache

Riavviare apache (/etc/init.d/apache2 restart) e visitare http://localhost supponendo di averlo installato sulla propria workstation.

Se si stanno utilizzando server fastcgi, dovrebbe essere possibile visualizzarli con top -u apache.

Se non dovesse funzionare, provare il server web integrato (digitare gorg). Se neanche questo metodo dovesse funzionare, verificare il file di configurazione /etc/gorg/gorg.conf. Se invece dovesse funzionare, verificare i file di configurazione di apache ed i log.



Stampa

Aggiornato il 7 maggio 2012

Oggetto: Questa guida descrive come installare e configurare gorg.

Xavier Neys
Autore

Joshua Saddler
Redazione

Marco Paolone
Traduzione

Donate to support our development efforts.

Copyright 2001-2014 Gentoo Foundation, Inc. Questions, Comments? Contact us.