Current time: 11-23-2024, 05:18 PM Hello There, Guest! (LoginRegister)


Post Reply 
[Howto] instalar Awstats en IspCP RC2
Author Message
diems Offline
Junior Member
*

Posts: 25
Joined: Jan 2008
Reputation: 0
Post: #1
[Howto] instalar Awstats en IspCP RC2
Gente, este es un "Como" instalar Awstats en ispCP Omega RC2.

Este articulo esta basado en otro que encontre en ingles pero tuve que hacer algunos cambios para que funcionara, asi que decidi pasarlo a español y agregar lo que consideré necesario para que funcione, utilize para la instalación Debian-Etch Rc0 y IspCP-Omega Rc2.

Primero que nada instalar awstats:
Code:
apt-get install awstats
Luego hay que habilitar ispcp-Omega para que genere las estadisticas estáticas, editar el archivo /etc/ispcp/ispcp.conf
Y modificar donde dice:

Code:
AWSTATS_DIR = no

Remplazar donde dice “no” por donde esta el awstats, por ejemplo /etc/awstats:

Code:
AWSTATS_DIR = /etc/awstats


Cuando se agregue un Nuevo dominio, Omega generará un archivo de configuración para el dominio, en el siguiente paso necesitaremos crear un trabajo en cron para cada dominio. Omega provee funcionalidades para crear CronJobs, pero estas funcionalidades estas deshabilitadas de momento, entonces necesitaremos habilitarlas. Editar /var/www/ispcp/engine/ispcp-dmn-mngr y buscar las siguientes líneas, estas debieran estar alrededor de la línea 3540

Code:
return $rs if ($rs != 0);

    $rs = dmn_add_mta_data($dmn_data);


Agregar debajo las siguientes lineas:

Code:
# Modified by Snipersister for awstats Support
    $rs = dmn_add_crontab_data($dmn_data);

    return $rs if ($rs != 0);


Y cerca de la linea 3640 donde se encuentra lo siguiente:

Code:
$rs = dmn_del_mta_data($dmn_data);

    return $rs if ($rs != 0);

Nuevamente, agregar las siguientes líneas

Code:
# Modified by Snipersister for awstats Support    
     $rs = dmn_del_crontab_data($dmn_data);

    return $rs if ($rs != 0);

Ahora necesitaremos crear un directorio por cada dominio, donde se almacenaran las estadísticas, buscar las siguientes líneas cerca de la línea 1798

Code:
$rs = make_dir(
                    "$starter_dir/$dmn_name/php5",
                    $sys_user,
                    $sys_group,
                    0750
                    );

    return $rs if ($rs != 0);
    }

Luego de lo anterior agregar lo siguiente:

Code:
# Added by SniperSister
    #
    # AwStats Directory
    #

    $rs = make_dir(            
                    "$www_dir/$dmn_name/statistics",
                    $sys_user,
                    $sys_group,
                    0755
                    );
    return $rs if ($rs != 0);


Barbaro, ahora Omega debe generar un Cronjob por cada domionio, pero mal!!, asi que tenemos que modificar el template que se encuentra en /etc/ispcp/crontab/parts/dmn_bk_entry.tpl
En este archivo, borrar todo lo que tenga y poner solo lo siguiente:

Code:
{MINUTE} {HOUR}  * * *   perl /var/www/ispcp/engine/awstats/awstats_buildstaticpages.pl -config={DMN_NAME} -update -lang=en -awstatsprog=/usr/lib/cgi-bin/awstats.pl -dir=/var/www/virtual/{DMN_NAME}/statistics/

Importante: si queremos que las estadisticas se generen en español, en las lineas anteriores donde dice –lang=en, poner –lang=es
Finalmente tendremos que editar el template de apache para agregar el alias
Primero editar /etc/ispcp/apache/httpd.conf y remover la siguiente linea

Code:
Alias /stats "/usr/lib/cgi-bin/awstats/"

Tambien editar /etc/ispcp/apache/parts/ispcp_base.tpl y remover la siguiente linea:
Code:
Alias /stats "/usr/lib/cgi-bin/awstats/"

Ahora editar /etc/ispcp/apache/parts/dmn_entry.tpl y remplazar
Code:
Redirect /stats http://{DMN_NAME}/awstats/awstats.pl
con

Code:
Alias /stats    {WWW_DIR}/{DMN_NAME}/statistics/
Debajo de:


Code:
# httpd dmn entry cgi support END.

Agregar:
Code:
<Directory "{WWW_DIR}/{DMN_NAME}/statistics">
        AllowOverride None
        DirectoryIndex awstats.{DMN_NAME}.html
        Order allow,deny
        Allow from all
    </Directory>

Ahora crear el siguiente symlink:

Code:
ln -s  /var/www/ispcp/engine/awstats /usr/share/doc/awstats/examples

y copier los iconos que se utilizarán:

Code:
mkdir /var/www/awstats
ln -s /usr/share/awstats/icon /var/www/awstats/icon

El siguiente paso es crear un directorio base para awstats:

Code:
mkdir /var/cache/awstats

finalizamos !
Este HowTo esta basado del articulo origina de Snipy con algunas modificaciones

Luego de realizar todos los pasos anteriores, encontre algunos inconvenientes en mi instalación que paso a detallar para que todo les quede funcionando

1) Copiar los archivos que están en:

Code:
ispcp-omega1.0.0/engine/awstats
a
Code:
/etc/ispcp/awstats

Son scripts perl que al menos en mi instalación no estaban en el lugar correcto.

2) Editar el archivo:

Code:
/var/www/ispcp/engine/ispcp-dmn-mngr

y cambiar en este archivo lo siguiente:

Code:
awstats.vhcs_tpl.conf

por

Code:
awstats.ispcp_tpl.conf



Con esto al menos en mi versión IspCP-Omega RC2 salio andando

También para que las paginas generadas se muestren en español, donde en el tuto se edita el archivo /etc/ispcp/crontab/parts/dmn_bk_entry.tpl en donde dice lang=en cambiar por: lang=es con esto tenemos las estadísticas en ingles.


Como levantar las estadísticas de un sitio que al momento de crear la cuenta no estaba instalado Awstats.

En mi caso, al instalar Awstats, ya tenía un par de dominios creados, y no quería tener que eliminar todo, asi que encontre una manera de hacer "a mano" las modificaciones necesarias para que los dominios existentes tengan sus estadisticas


1) Crear el archivo de configuración:

Code:
/etc/awstats/awstats.DOMINIO_A_CONFIGURAR.conf

Nota: Para guiarnos, es conveniente copiar un archivo
de configuracion ya creado con el nuevo nombre
y luego editarlo, luego cambiar en cada lugar
que aparezca el dominio por el dominio que estamos
configurando.

2) Crear la carpeta:

Code:
/var/www/virtual/DOMINIO_XXX/statistics


3) Agregar al crontab lo siguiente:

Code:
40 23  * * *    perl /var/www/ispcp/engine/awstats/awstats_buildstaticpages.pl -config=DOMINIO_XXXX.com -update -lang=es -awstatsprog=/usr/lib/cgi-bin/awstats.pl  -dir=/var/www/virtual/DOMINIO_XXXX.com/statistics/

4) Modificar las lineas de configuracion del apache del archivo

Code:
/etc/apache2/sites-enabled/ispcp.conf

Agregar dentro de la configuracion del Virtual Host:
Luego de los ErrorDocument:

Code:
Alias /stats    /var/www/virtual/DOMINIO_XXXX/statistics/
y
Code:
<Directory "/var/www/virtual/DOMINIO_XXXX/statistics">
            AllowOverride None
            DirectoryIndex awstats.prueba.com.html
            Order allow,deny
            Allow from all
</Directory>
Nota: para probar que se generen las estadísticas, podemos correr el script perl que esta en el crontab en la consola, esto debería generar las estadisticas

Reiniciar apache y acceder a http://DOMINIO_XXXX/stats

Si todo salio bien, tenemos el excelente gestor de estadísticas Awstats instalado y funcioando!

Problemas que encontre y solucioné:

1) Al actualizar algo desde el Panel se copiaba el "working copy" con el crontab de Awstats que ya no usaremos. Pasa solucionar esto, editar el archivo:

Code:
/etc/ispcp/crontab/working/crontab.conf

Comentar o eliminar la entrada de Awstats vieja

Tambien encontre la misma línea en el archivo:

Code:
/etc/ispcp/crontab/crontab.conf


Otro tema que encontre es que no basta con poner lang=es , por que awstats no muestra correctamente los caracteres, para dejar esto bien hay que hacer lo siguiente:

Code:
cd /usr/share/awstats/lang
mv awstats-es.txt awstats-es-iso-8859-1.txt
iconv --from-code=ISO-8859-1 --to-code=UTF-8 awstats-es-iso-8859-1.txt > awstats-es-utf-8.txt
ln -s awstats-es-utf-8.txt awstats-es.txt

Y añadimos está línea al fichero awstats-es-utf-8.txt

Code:
PageCode=UTF-8

Renegeramos las estadisticas, y ahi debieran verse bien

-----------------------------------------------------

Si encuentran mejoras, o algo esta mal, por favor, no dejen de decirmelo

Espero que esto mejore mi reputación Tongue

Saludos!
(This post was last modified: 01-29-2008 03:38 PM by diems.)
01-29-2008 10:36 AM
Find all posts by this user Quote this message in a reply
raphael Offline
Member
***

Posts: 474
Joined: Apr 2007
Reputation: 8
Post: #2
RE: [Howto] instalar Awstats en IspCP RC2
Y el objetivo de esto es...?

RC3 tiene soporte para awstats dinámico y estático al momento de la instalación.
01-30-2008 06:03 AM
Visit this user's website Find all posts by this user Quote this message in a reply
diems Offline
Junior Member
*

Posts: 25
Joined: Jan 2008
Reputation: 0
Post: #3
RE: [Howto] instalar Awstats en IspCP RC2
El objetivo es proveer esta info a aquellos que este utilizando RC2, ya que no existe un upgrade de RC2 a RC3, al menos es lo que tengo entendido ..

Saludos!
01-30-2008 09:21 AM
Find all posts by this user Quote this message in a reply
Post Reply 


Forum Jump:


User(s) browsing this thread: 1 Guest(s)