]> git.llucax.com Git - mecon/intranet.git/blob - doc/doxygen/instalacion.php
3c5e8e65064e5dcec8308cfaef3297f04390c19f
[mecon/intranet.git] / doc / doxygen / instalacion.php
1 /** @page instalacion Manual de Instalación
2
3 @section apache Instalación de Apache.
4
5         @verbatim
6         Nombre                                  Versión
7         apache                                  1.3.29-1
8         apache-common                           1.3.29-1
9         apache-utils                            1.3.29-1
10         @endverbatim
11
12         @subsection apache_config Configuración.
13                 Poner como DocumentRoot /var/www/htdocs.
14
15         @subsection apache_embperl Instalación del Embperl para la Intranet del MECON.
16
17                 Paquetes del Apache utilizados
18                 @verbatim
19                 Nombre                                  Versión
20                 libapache-dbi-perl                      0.92-0.1
21                 libapache-mod-perl                      1.29-1
22                 libapache-session-perl                  1.54-1
23                 libapache-tempfile-perl_0.04-1_all.deb  -
24                 @endverbatim
25
26                 @note El último paquete de la lista fue escrito por la fundación
27                 Via Libre y por lo tanto no se encuentra en el repositorio del
28                 apt de debian, y sirve para realizar el manejo de las sesiones de
29                 los usuarios a través de una cookie que registra la información
30                 en la base de datos Sessions de mysql.
31
32                 Otros paquetes de perl usados para la instalación de la Intranet
33
34                 Paquetes que están en el repositorio del apt de debian
35                 @verbatim
36                 Nombre                                  Versión
37                 perl                                    5.8.1-2
38                 perl-base                               5.8.1-2
39                 perl-modules                            5.8.1-2
40                 libdbi-perl                             1.35-1
41                 libembperl-perl                         2.0b9.0-1
42                 libhtml-embperl-perl                    1.3.6-1
43                 libxml-perl                             0.07-10
44                 libwww-perl                             5.69-4
45                 liburi-perl                             1.23-1
46                 libxbase-perl                           0.2400-1
47                 libxml-parser-perl                      2.34-1
48                 libxml-dumper-perl                      0.67-1
49                 @endverbatim
50
51                 Archivos adicionales para el manejo de la sesión del usuario
52                 @verbatim
53                 Nombre                  Ubicación
54                 SimpleXMLISO.pm         /usr/share/perl5/Apache/Session/Serialize/
55                 DumperISO.pm            /usr/share/perl5/XML/
56                 Php2Embperl_Session.epl /var/www/htdocs/ (raiz del Apache)
57                 @endverbatim
58
59                 Todos estos archivos sirven para compartir las sesiones de los
60                 usuarios entre diferentes lenguajes. En el caso de la Intranet
61                 los lenguajes actualmente usados son PHP y Embperl.  Los archivos
62                 SimpleXMLISO.pm (autor: Gonzalo Merayo) y DumperISO.pm (autor:
63                 Jonathan Eisenzopf <eisen@pobox.com>) son librerías escritas
64                 en Lenguaje PERL que sirven para parsear el XML de la sesion
65                 utilizada por los sistemas programados en Embperl.  El archivo
66                 Php2Embperl.epl le sirve a la Intranet para cargar todos los
67                 datos de la sesión de PHP y pasarlos a la sesión de Embperl.
68
69
70                 @subsubsection apache_embperl_apache Configuración del Servidor Apache
71
72                         En este documento se incluye solamente la configuración de
73                         Embperl, dejándose de lado por el momento la configuración de PHP
74                         o de cualquier otro punto que pueda surgir durante la instalación.
75
76                         Archivos @ref embperl_apache_httpd.conf y @ref embperl_apache_modules.conf
77
78                         En versiones anteriores la información del archivo modules.conf
79                         se encontraba incorporada al archivo httpd.conf pero para mayor
80                         claridad fueron separados.  Estos archivos se encuentran por
81                         default en el directorio /etc/apache/ como el resto de los
82                         archivos de configuración del Servidor Apache.
83
84                         @par embperl_apache_modules.conf modules.conf
85                         El archivo modules.conf contiene la declaración de
86                         todos los módulos del Apache que serán cargados en el momento de
87                         levantar el servicio.  Para cargar el módulo perl es necesario
88                         incluir en este archivo la siguiente línea: LoadModule perl_module
89                         /usr/lib/apache/1.3/mod_perl.so Observación: El directorio 1.3
90                         se corresponde con la versión del apache que se está instalando.
91
92                         @par embperl_apache_httpd.conf httpd.conf
93                         Este es el archivo de configuración principal
94                         del Apache y para la configuración del Embperl se deben
95                         seguir los siguientes pasos: Agregar la linea Include
96                         /etc/apache/modules.conf para incorporar la información
97                         del archivo modules.conf.  Agregar las siguientes líneas
98                         correspondientes a la configuración específica de Embperl:
99
100                         @verbatim
101                         # Las siguientes líneas son para páginas de Embperl
102                         <Files *.epl>
103                                 PerlModule Apache::DBI        # Módulo que permite interactuar con bases de datos
104                                 PerlModule Data::Dumper;     # Módulo que permite devolver resultados de variables
105                                 AddType text/html .epl            # Indica que los archivos .epl deben ser interpretados por el handler de perl 
106                                 SetHandler perl-script              # Indica que handler usar
107                                 PerlHandler HTML::EmbperlObject   # Agrega el módulo de EmbperlObject
108                                 PerlSetEnv EMBPERL_COOKIE_DOMAIN ".mecon.ar"   # Indica el dominio de la cookie usada para la sesion
109                                 PerlSetEnv EMBPERL_SESSION_ARGS "DataSource=dbi:mysql:Sessions;host=servidor_mysql UserName=usuario Password=password NSems=16"   # Setea los argumentos de la base de datos que maneja la sesión
110                                 PerlSetEnv  EMBPERL_OPTIONS 16     # Estaba así
111                                 PerlSetEnv EMBPERL_SESSION_CLASSES "MySQL Semaphore SimpleXMLISO"  # Indica las librerías usadas para administrar el almacenamiento de la información de la sesión en la base de datos
112                                 PerlSetEnv  EMBPERL_OBJECT_BASE base.epl    #Indica el archivo base usado por EmbperlObject en cada directorio
113                                 Options ExecCGI   # Indica el modo de ejecución del Embperl
114                         </Files>
115
116                         # Las siguientes líneas son para otros archivos de perl
117                         <Files *.pl>
118                                 SetHandler perl-script
119                                 PerlHandler Apache::Registry
120                                 Options ExecCGI
121                         </Files>
122                         @endverbatim
123
124
125         @subsection apache_php Instalación de PHP.
126
127                 Paquetes necesarios:
128                 @verbatim
129                 Nombre          Versión
130                 php4            4.3.3
131                 php4-pear       4.3.3
132                 php4-gd         4.3.3
133                 php4-ldap       4.3.3
134                 php4-mysql      4.3.3
135                 @endverbatim
136
137                 @subsubsection apache_php_pear Instalación de paquetes de PEAR.
138                         @verbatim
139                         pear install Date
140                         pear install Validate
141                         pear install Mail_Mime
142                         pear install HTML_Common
143                         pear install HTML_Table
144                         pear install HTML_QuickForm
145                         pear install HTML_Page
146                         @endverbatim
147
148                 @subsubsection apache_php_config Configuración de PHP.
149
150                         La configuración por omisión de Debian es bastante buena, sólo hay que modificar
151                         (o agregar en caso de no estarlo) lo siguiente:
152                         @verbatim
153                         zlib.output_compression = On
154                         allow_call_time_pass_reference = Off
155                         memory_limit = 16M
156                         error_reporting = E_ALL
157                         display_errors = Off
158                         log_errors = On
159                         log_errors_max_len = 4096
160                         track_errors = On
161                         html_errors = Off
162                         error_log = /var/log/apache/php.log
163                         register_globals = Off
164                         register_argc_argv = Off
165                         magic_quotes_gpc = Off
166                         default_charset = "iso-8859-1"
167                         include_path = ".:/var/www/sistemas_lib:/var/www/meconlib/lib:/var/www/meconlib/pear_lib_tmp:/usr/share/php"
168                         extension=gd.so
169                         extension=ldap.so
170                         extension=mysql.so
171                         [mail functions]
172                         SMTP = mail1.mecon.ar
173                         sendmail_from = intranet@mecon.gov.ar
174                         [Session]
175                         session.cookie_domain = .mecon.ar
176                         session.name = INTRANET_PHPSESSID
177                         session.auto_start = 1
178                         @endverbatim
179
180
181 @section locales Configuración de locales.
182         @verbatim apt-get install locales @endverbatim
183         Luego elegir es_AR ISO.8859-1 en la primera lista y es_AR en la segunda.
184         
185
186 @section sistemas Instalacion de sistemas.
187
188         @subsection sistemas_subversion Instalación de Subversion.
189                 Instalar el paquete subversion:
190                 @verbatim apt-get install subversion @endverbatim
191
192         @subsection sistemas_permisos Permisos y estructura de directorios.
193                 Asegurarse de que los permisos en /var/www sean correctos:
194                 @verbatim
195                 chown www-data.www-data /var/www -R
196                 chmod 2770 /var/www
197                 @endverbatim
198                 Como el usuario www-data cree la estructura de directorios:
199                 @verbatim
200                 su www-data
201                 cd /var/www
202                 mkdir sistemas htdocs sistemas_lib
203                 @endverbatim
204
205         @subsection sistemas_checkout Obtener bibliotecas y sistemas.
206                 Obtener MEconlib:
207                 @verbatim
208                 svn co http://portal.mecon.ar/svn/meconlib/tronco meconlib
209                 @endverbatim
210                 Obtener Intranet, SAMURAI, AI y otros sistemas:
211                 @verbatim
212                 cd sistemas
213                 svn co http://portal.mecon.ar/svn/intranet/tronco intranet
214                 svn co http://portal.mecon.ar/svn/samurai/tronco samurai
215                 svn co http://portal.mecon.ar/svn/ai/tronco ai
216                 @endverbatim
217
218         @subsection sistemas_public Crear estructura pública.
219                 @verbatim
220                 cd /var/www/htdocs
221                 ln -s ../meconlib/www MECON
222                 echo '<?php header("Location: /sistemas/intranet/") ?>' > index.php
223                 mkdir sistemas
224                 cd sistemas
225                 ln -s ../../sistemas/intranet/sistema/www intranet
226                 ln -s ../../sistemas/samurai/sistema/www samurai
227                 ln -s ../../sistemas/ai/sistema/www ai
228                 @endverbatim
229
230         @subsection sistemas_libs Crear estructura de bibliotecas.
231                 @verbatim
232                 cd /var/www/sistemas_lib
233                 ln -s ../sistemas/ai/lib/AI
234                 ln -s ../sistemas/samurai/lib/SAMURAI
235         @endverbatim
236
237
238 */