RosarioSIS es una aplicación web que depende de un servidor web, el lenguaje de script PHP y un servidor de base de datos PostgreSQL.
Para que funcione RosarioSIS se debe primero tener el servidor web, PostgreSQL, y PHP (incluyendo las extensiones pgsql
, gettext
, mbstring
, gd
, curl
, xml
y zip
) operativos. La implementación de aquellos varia con el sistema operativo así que está fuera del alcance de este breve documento de instalación.
RosarioSIS ha sido probado en:
- Windows 10 x86 con Apache 2.4.16, Postgres 9.3.6, y PHP 5.4.45
- Ubuntu 14.04 con Apache 2.4.18, Postgres 9.3.10, y PHP 5.5.9
- Ubuntu 18.04 con Apache 2.4.46, Postgres 10.15, y PHP 7.4.13
- Debian Buster con Apache 2.4.38, Postgres 11.5, y PHP 8.0.0
- CentOS 8.2 con Apache 2.4.37, Postgres 9.6.10, y PHP 7.2.24
- Shared hosting con cPanel, nginx, Postgres 8.4, y PHP 5.6.27
- a traves de Mozilla Firefox y Google Chrome
- con BrowserStack para la compatibilidad de navegadores (no compatible con Internet Explorer 9 o anterior)
Requerimientos mínimos: PHP 5.4.45 y PostgreSQL 8.4
Instrucciones de instalación:
Descomprima el archivo de RosarioSIS, o clona el repositorio usando git en un directorio accesible con el navegador. Edita el archivo config.inc.sample.php
para definir las variables de configuración apropiadas, y renombralo config.inc.php
.
-
$DatabaseServer
Nombre o dirección IP del servidor de base de datos. -
$DatabaseUsername
Nombre de usuario para conectarse a la base de datos. -
$DatabasePassword
Contraseña para conectarse a la base de datos. -
$DatabaseName
Nombre de la base de datos. -
$DatabasePort
Número de puerto para acceder a la base de datos. -
$pg_dumpPath
Camino completo hacia el utilitario de exportación de base de datos, pg_dump. -
$wkhtmltopdfPath
Camino completo hacia el utilitario de generación de PDF, wkhtmltopdf. -
$DefaultSyear
Año escolar por defecto. Solo cambiar después de haber corrido el programa Transferir. -
$RosarioNotifyAddress
Dirección de email para las notificaciones (nuevo administrador, nuevo estudiante / usuario, nueva inscripción). -
$RosarioLocales
Lista separada por comas de códigos de lenguajes. Ver la carpetalocale/
para los códigos disponibles.
$RosarioPath
Camino completo hacia la instalación de RosarioSIS.$wkhtmltopdfAssetsPath
Camino a la carpetaassets/
para wkhtmltopdf. Puede ser diferente de como el navegador la encuentra. Una cadena vacía significa sin traslado.$StudentPicturesPath
Camino hacia las fotos de los estudiantes.$UserPicturesPath
Camino hacia las fotos de los usuarios.$PortalNotesFilesPath
Camino hacia los archivos adjuntos a las notas del portal.$AssignmentsFilesPath
Camino hacia los archivos de las tareas de los estudiantes.$FS_IconsPath
Camino hacia los iconos del servicio de comida.$FileUploadsPath
Camino hacia los archivos subidos.$LocalePath
Camino hacia los lenguajes. Reinicie Apache después de cambiarlo.$PNGQuantPath
Camino hacia PNGQuant (compresión de las imagenes PNG).$RosarioErrorsAddress
Dirección de email para los errores (PHP fatal, base de datos, intentos de pirateo).$Timezone
Zona horaria usada por la funciones de fecha y tiempo. Listado de zonas horarias admitidas.$ETagCache
Pasar afalse
para desactivar el caché ETag y desactivar el caché de sesión "privada". Ver Sesiones y seguridad.define( 'ROSARIO_DEBUG', true );
Modo debug activado.define( 'ROSARIO_DISABLE_ADDON_UPLOAD', true );
Desactivar el upload de complementos (módulos y plugins).
Ahora, está listo para configurar la base de datos de RosarioSIS. Si tiene acceso al símbolo del sistema de su servidor, puede seguir estas instrucciones.
-
Abra una ventana del terminal.
-
Entra a PostgreSQL con el usuario postgres:
server$ sudo -u postgres psql
- Crea el usuario rosariosis:
postgres=# CREATE USER rosariosis_user WITH PASSWORD 'rosariosis_user_password';
- Crea la base de datos rosariosis:
postgres=# CREATE DATABASE rosariosis_db WITH ENCODING 'UTF8' OWNER rosariosis_user;
- Salga de PostgreSQL:
postgres=# \q
También, el archivo pg_hba.conf
puede ser editado para activar la conexión de usuarios con contraseña (md5
):
# "local" is for Unix domain socket connections only
local all all md5
Para instalar la base de datos, apunte su navegador a: http://sudominio.com/REPERTORIO_DE_INSTALACION/InstallDatabase.php
Es todo!... ahora, apunte su navegador a: http://sudominio.com/REPERTORIO_DE_INSTALACION/index.php
y entra con el nombre de usuario 'admin' y la contraseña 'admin'. Con esta cuenta, podrá agregar nuevos usuarios, y modificar o suprimir los tres usuarios de ejemplo.
Para ayudarlo a detectar problemas de instalación, apunte su navegador a: http://sudominio.com/REPERTORIO_DE_INSTALACION/diagnostic.php
Instrucciones de instalación para Ubuntu 18.04:
server$ sudo apt-get install php-pgsql php-gettext php-mbstring php-gd php-curl php-xmlrpc php-xml php-zip
Configuración PHP recomendada. Editar el archivo php.ini
como sigue:
max_execution_time = 240
max_input_vars = 4000
memory_limit = 768M
Reiniciar PHP y Apache.
Instrucciones de instalación para Ubuntu 18.04. Instalar el lenguaje español:
server$ sudo apt-get install language-pack-es
Luego reinicie el servidor.
Instrucciones de instalación para Ubuntu 18.04 (Bionic):
server$ wget https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6-1/wkhtmltox_0.12.6-1.bionic_amd64.deb
server$ sudo dpkg -i wkhtmltox_0.12.6-1.bionic_amd64.deb
Definir el camino en el archivo config.inc.php
:
$wkhtmltopdfPath = '/usr/local/bin/wkhtmltopdf';
Instrucciones de instalación para Ubuntu 18.04. Activar la función PHP mail()
:
server$ sudo apt-get install sendmail