G2/3w/2.9.4/DocTecnica/Configuracion

<< Volver

Archivo de configuración: instalacion/alias.conf

Este template permite tener instalado en diferentes alias las diferentes unidades
# académicas y también define de manera centralizada todo el manejo de nombres en los dominios
# LOS ALIAS NO TIENEN QUE TENER PUNTOS

Alias /v294 "proyectos/guarani2/3w/versiones/2.9.4/src/siu/www"

<Directory "proyectos/guarani2/3w/versiones/2.9.4/src/siu/www">
	Options FollowSymLinks
    DirectoryIndex index.php
    Order allow,deny
    Allow from all
	include proyectos/guarani2/3w/versiones/2.9.4/instalacion/rewrite.conf
</Directory>

<Location /v294>
    SetEnv ACC_ID des01
	SetEnvIf always_match ^ ACC_ALIAS=/v294
</Location>

Archivo de configuración: instalacion/config.php

El archivo de configuración tiene un bloque principal llamado global. En este bloque se configuran valores globales a todos los puntos de acceso del proyecto. A continuación vemos un archivo de configuración de ejemplo: # instalacion/config.php

<?php
 return array (
  'global' => 
  array (
    'produccion' => false,
    'usar_personalizaciones' => false,
    'sesion_timeout' => 600,
    'sesion_maxtime' => 3600,
    'dir_attachment' => '/tmp',
//	'server_name' => '192.168.126.180',
	'imagen_alumno_dir' => '/path/to/g3w2/src/siu/www/_comp/_img_alumnos',
	'imagen_alumno_url' => 'http://localhost/g3w2/_comp/_img_alumnos',
    'salt' => '9bf057558b90263987bd8f99caf2e92f7efc1a13',
    'captcha' => 
    array (
      'activo' => true,
      'intentos_login' => 3,
      'public_key' => '6Ldja84SAAAAAKdiYZIbx6qjQMtAdzWXiW474_Af',
      'private_key' => '6Ldja84SAAAAABchqHlz65yICNXJQ8ENbZpLvmS5',
    ),
    'log' => 
    array (
      'activo' => true,
      'nivel' => 'debug',
      'barra_dev' => true,
    ),
    'ini_debug' => false,

    /**
     * Indica el manejador de cache a utilizar.
     * NOTA: si utiliza un esquema de servidores distribuidos se recomienda
     * utilizar 'memcached' y configurar uno o más servidores de cache.
     *  - Valores posibles: apc|memcached
    */
    'manejador_cache_memoria' => 'apc',

    /**
     * Configuración de servidores de memcached
    */
    'memcached' => 
    array (
      'server_1' => 
      array (
        'host' => 'localhost',
        'port' => 11211,
        'peso' => 1,
      ),
    ),

    'smtp' => 
    array (
      'from' => '**********@gmail.com',
      'host' => 'smtp.gmail.com',
      'seguridad' => 'ssl',
      'auth' => true,
      'port' => 465,
      'usuario' => '**********@gmail.com',
      'clave' => '**********',
    ),
    'login_externo' => 'none',
    'accesos' => 
    array (
      'des01' => 
      array (
        'ua' => 'unidadAcademica',
        'personalizacion' => 'ejemplo01',
        'database' => 
        array (
          'vendor' => 'informix',
          'database' => 'baseDeDatos',
          'host' => 'localhost',
          'server' => 'guarani',
          'client_locale' => 'en_us.cp1252',
          'service' => 1526,
          'protocol' => 'olsoctcp',
          'LogonID' => 'internet',
          'pwd' => 'internet',
          'EnableScrollableCursors' => 1,
        ),
      ),
    ),
  ),
 'url_kolla' => 'http://localhost/siu/kolla/aplicacion.php',
 'ssl' => array(
     'alcance' => 'none',//'none' | 'all'
     'redirigir_ssl' => true,//true | false
 ),
 'cant_emails_a_enviar_por_corrida_cron' => 10,
);

Veamos las entradas de este archivo una por una:

  • produccion *: indica si el sistema está o no en un entorno de producción
    • valores posibles: true|false
  • usar_personalizaciones *: si se encuentran activadas o no las personalizaciones
    • valores posibles: true|false
  • sesion_timeout *: tiempo de timeout de la sesión en segundos
    • valores posibles: número entero
  • sesion_maxtime *: tiempo máximo de duración de sesión en segundos
    • valores posibles: número entero
  • imagen_alumno_dir : El comando ./guarani importar_fotos extrae las fotos de los alumnos de la base y las almacena en el sistema de archivos para que sea mas eficiente el uso de las mismas. En imagen_alumno_dir el sistema de archivos donde se van a guardar esas fotos.
  • ini_debug: si está activo busca una clase siu\debug y ejecuta el metodo ini() despues de cargar el nucleo
    • valores posibles: true|false
    • valores defecto: false
  • salt *: en algunos lugares de la aplicación se encriptan cadenas con sha1. Se utiliza este salt para hacer la encriptación
    • valores posibles: string
  • url_recursos: url de los recursos compilados del sistema (ver pasaje a producción). Si no se setea por defecto los busca en la carpeta www/_comp
    • valores posibles: string; una url
    • valores defecto: string vacío
  • dir_temp: path al directorio donde se guardarán los archivos temporales del sistema (por ejemplo la cache de los templates twig). En esta carpeta apache debe tener permisos de escritura.
    • valores posibles: string; un path
    • valores defecto: instalacion/temp/[conf_id]
  • dir_attachment: path al directorio donde se guardarán los attachments de los mensajes. Por defecto usa la carpeta especificada por dir temp. En esta carpeta apache debe tener permisos de escritura.
    • valores posibles: string; un path
    • valores defecto: dir_temp
  • captcha: configuración de captchas (por defecto usa  recaptcha). Si no se especifica este bloque no se usa captcha (es lo mismo que setear activo en false)
    • activo: indica si se activan los captchas a través de toda la aplicación
      • valores posibles: true|false
    • intentos_login: la cantidad de intentos de login que se pueden hacer antes de que se solicite ingresar un captcha
      • valores posibles: integer
    • public_key: la clave pública de recaptcha
      • valores posibles: string
    • private_key: la clave privada de recaptcha
      • valores posibles: string
  • log: configuración de logging. Si no se especifica este bloque no se usa el log (es lo mismo que setear activo en false).
    • activo: indica si el log está activo o no
      • valores posibles: true|false
    • nivel: el nivel de log
      • valores posibles: string; error | info | debug
    • barra_dev: indica si la barra de development está activa
      • valores posibles: true|false
  • accesos *: en esta entrada se configuran los puntos de acceso de la aplicación, por lo menos tiene que haber uno. Ver configuración de archivo de alias
    • id_acceso: el nombre del acceso
      • ua: unidad académica de este acceso. Es obligatorio.
      • personalizacion: id de la personalización que se va a utilizar. Si está vacío no se utiliza ninguna personalización
      • database: información de conexión de la base de datos
  • url_kolla : es la conexión con Kolla. Más información en  Conexión Kolla - Guaraní
  • ssl: configuración de SSL, la cual define si la aplicación es accedida vía el protocolo HTTP o HTTPS.
    • alcance: si se indica 'all' la aplicación es accedida vía el protocolo HTTPS, si se indica 'none' se accede vía el protocolo HTTP, esta ultima es la opción por defecto.
      • valores posibles: 'none'|'all'
    • redirigir_ssl: indica si se debe redirigir en el caso que se halla accedido con el protocolo incorrecto, por defecto es true (redirige).
      • valores posibles: true|false
  • cant_emails_a_enviar_por_corrida_cron: cantidad de emails a enviar por cada corrida del cron o por cada vez que se corre el comando 'enviar_emails'. Si no se setea por defecto envía todos los emails encolados.
    • valores posibles: número entero
  • imagen_alumno_dir: Directorio donde se guardan las fotos de las personas, es utilizado por el comando importar_fotos para importar dichas fotos desde la base de datos al sistema de archivos.
    • valores posibles: path a un directorio ya sea dentro del 3W o externo.
  • imagen_alumno_url: URL donde se encuentran las fotos de las personas.
    • valores posibles: URL.
  • manejador_cache_memoria: Indica el manejador de cache a utilizar. (Opcional). Si utiliza un esquema de servidores distribuidos se recomienda utilizar 'memcached' y configurar uno o más servidores de cache.
    • Valores posibles: apc|memcached
    • Valores por defecto: apc
  • memcached: Configuración de los servidores de memcached. (Opcional)
    • Valores posibles: Servidores de memcached


Datos de conexión a la base de datos:

  • ua: Código de Unidad Académica (sga_unidades_acad.unidad_academica)
    personalizacion: nombre de la personalización si tienen personalizado el sistema.
  • vendor: Por defecto 'informix' ya que es el motor de base de datos de Guarani 2.
  • database: Nombre de la base de datos de Guarani.
  • host: Nombre o IP del server donde se encuentra el motor informix.
  • server: Nombre de la instancia del motor informix.
  • client_locale: Locale del Cliente. Por defecto en_us.cp1252.
  • service: Nro de puerto habilitado para la conexion al servidor informix. Por defecto el puerto 1526.
  • protocol: protocolo de conexion a la base. Por defecto 'olsoctcp'.
  • LogonID: Nombre del usuario de la base. Debe ser un usuario con permiso de acceso a la base y ser un usuario de Guarani, es decir que exista en las tablas acc_usuarios y sga_datos_usuarios.
  • pwd: Password del usuario de la base
  • EnableScrollableCursors: Por defecto va el valor 1. Habilita los cursores.


* el campo es obligatorio

NOTAS: Este archivo puede ser configurado en cascada, es decir, los valores globales pueden ser sobrescritos por los valores que se definen a nivel de bloque de acceso. Por ejemplo si se quiere sobrescribir el valor reply_to de la configuración del correo electrónico se hace como sigue:

<?php

return array(
    'global' =>
        array(
            ..............
            'smtp' =>
                array(
                    'from' => 'from_global@gmail.com',
                    'host' => 'smtp.gmail.com',
                    'seguridad' => 'ssl',
                    'auth' => true,
                    'port' => 465,
                    'usuario' => 'usuario_global@gmail.com',
                    'clave' => 'xxxxxxxxxxxxx',
                    'reply_to' => 'reply_to_global@gmail.com'
                ),
            ..............
            'accesos' =>
                array(
                
                'des01' =>
                    array(
                        'ua' => 'MED',
                        'personalizacion' => 'medicina',
                        'database' =>
                        array(
                            ..............
                        ),
                        'smtp' =>
                            array(
                                'reply_to' => 'reply_to_medicina@gmail.com'
                            ),
                    ),
                
                'des02' =>
                    array(
                        'ua' => 'VET',
                        'personalizacion' => 'veterinaria',
                        'database' =>
                        array(
                            ..............
                        )
                    ),

                ),
        ),
);

En este ejemplo el bloque de acceso des01 (medicina) sobrescribe el valor global reply_to a reply_to_medicina@…, en cambio el bloque de acceso des02 (veterinaria) utiliza el valor global (reply_to_global@…).

Archivo de configuración: instalacion/login.php

└── instalacion
    └── login.php

Toda la configuración de la autenticación se realiza en el archivo de configuración /instalacion/login.php. Aquí se debe retornar un arreglo de los mecanismos de autenticación disponibles en el proyecto.

return array(

	'form'     => array(
		'activo'     => true,
		'clase'      => 'modelo\\autenticacion\\auth_form',
		'parametros' => array( 

		)
	),

Parámetros

  • Llave del arreglo: Se utiliza para referenciar al provider en distintas fases del proceso, y también aparece en la URL.
  • Activo: Si está activo este proveedor en el proyecto.
  • Clase: Clase que extiende de kernel\acceso\authentication_provider. En guaraní preferentemente extender de auth_guarani.
  • Parámetros: Se entrega al constructor de la clase, y cada clase lo maneja a discreción.

<< Volver