manual instalacao linux 1 0 x Page History


Instalando o i-Educar

Atenção: este artigo foi migrado do antigo Portal do SPB e pode estar desatualizado, isso significa que pode ter algumas informações que não se aplicam mais. Caso tenha alguma dúvida ou sugestão, acesse a Home desta wiki, onde tem um link apontando para um espaço que foi reservado para isto.

  1. Download do software
  2. Criando o banco de dados
    1. Ajustando o search_path
  3. Configurando o PHP
  4. Copiando os arquivos do i-Educar e configurando as permissões
    1. Configurando os parâmetros de acesso ao banco
  5. Acessando a aplicação
  6. Criando um virtual host no Apache 2

Instalar o i-Educar em si é um processo bastante simples. Mas antes de instalar, é importante que os requisitos do sistema estejam satisfeitos:

  • PHP 5.2
    • ext/gd
    • ext/pgsql
    • pecl/pdflib
  • Biblioteca PDFLib
  • Servidor web Apache
  • PostgreSQL 8.2

Observações mais detalhadas destas dependências estão em Pré-requisitos.

Todo o processo de instalação deste guia foi feito no Debian Lenny mas é fácil aplicar os passos em outros sistemas operacionais.

Download do software

Faça o download dos arquivos do sistema antes de prosseguir. A versão atual da família 1.0.X ( 1.0.2), está disponível em pacotes ZIP e Gzip. Ao descompactar, você terá dois diretórios: intranet/ com os arquivos da aplicação e misc/, onde se encontra o script SQL para a criação do banco de dados.

Criando o banco de dados

Crie o banco de dados ao qual o i-Educar usará para armazenar todos os dados digitados através da interface web. Os seguintes comandos irão criar:

Um usuário ieducaruser no servidor PostgreSQL; Um banco de dados ieducardb com a senha de acesso ieducar.

Observação: você pode usar o nome de usuário, banco de dados e senha que desejar. No i-Educar existe um arquivo onde estes parâmetros de conexão são configurados. Caso decida dar outro nome ao banco de dados, comente a linha 21 do arquivo ieducar.sql com dois hífens.

Faça login no servidor de banco de dados PostgreSQL com o cliente psql:

$ su – postgres

# psql

postgres=#

Crie o usuário de banco de dados que será utilizado pelo i-Educar:

postgres=# CREATE ROLE ieducaruser;

postgres=# ALTER ROLE ieducaruser WITH SUPERUSER INHERIT NOCREATEROLE CREATEDB LOGIN PASSWORD 'ieducar';

Crie o banco de dados:

postgres=# CREATE DATABASE ieducardb WITH TEMPLATE = template0 OWNER = ieducaruser ENCODING = 'LATIN1';

Descompacte o tar.gz do script SQL do banco de dados (dentro do diretório misc/) e faça o restore para criar as tabelas do sistema:

$ cd misc

$ tar xvzf ieducar.sql.tar.gz

$ psql -d ieducardb -f ieducar.sql

Atenção: em algumas plataformas, o restore do banco tem que ser feito no mesmo diretório em que o arquivo sql reside senão o cliente psql mostra um erro FATAL não relacionado com a operação com a tarefa.

Ajustando o search_path

Algumas instalações do i-Educar tiveram o problema de não conseguir fazer o login no sistema após a criação do banco de dados. A mensagem de erro deverá ser semelhante a essa durante o login:

Warning: pg_query() [function.pg-query]: Query failed: ERRO: relação "funcionario" não existe in /var/www/ieducar/intranet/include/clsBancoPgSql.inc.php

on line 191 SQL invalido: SELECT ref_cod_pessoa_fj FROM funcionario WHERE matricula = 'adm'

Isso pode ter acontecido pelo fato do search_path não ter sido recuperado corretamente durante a importação do arquivo SQL. Primeiro, faça um login no PostgreSQL pelo psql com o usuário ieducaruser e verifique se o seu search_path está como o seguinte:

$ sudo -u postgres psql -U ieducaruser ieducardb

ieducardb=# SHOW search_path;

search_path


"$user", public, portal, cadastro, acesso, alimentos, consistenciacao, historico, pmiacoes, pmicontrolesis, pmidrh, pmieducar, pmiotopic, urbano

(1 row)

Caso não esteja, será necessário configurá-lo corretamente. Ainda no psql, dê o seguinte comando para ajustar o search_path:

$ sudo -u postgres psql -U ieducaruser ieducardb

ieducardb=# ALTER DATABASE ieducardb SET search_path TO "$user", public, portal, cadastro, acesso, alimentos, consistenciacao, historico, pmiacoes, pmicontrolesis, pmidrh, pmieducar, pmiotopic, urbano;

Configurando o PHP

O i-Educar funciona com a configuração padrão do PHP 5. Apenas alguns ajustes são necessários para evitar um mau comportamento da aplicação. Edite o arquivo php.ini ajustando as seguintes diretivas:

  • memory_limit: altere para no mínimo 32M (devido ao gerador de relatórios, em plataformas 64 bit, pode ser necessário aumentar para uma quantidade maior);

memory_limit = 32M

  • error_reporting: altere para E_ALL & ~E_NOTICE para evitar que avisos do nível E_NOTICE (comuns na versão atual), apareçam nas telas quebrando o layout do sistema;

error_reporting = E_ALL & ~E_NOTICE

  • display_errors: altere para Off em produção e deixe On para no seu ambiente de desenvolvimento.

display_errors = Off

  • short_open_tag: altere para On.

short_open_tag = On

Observação: a localização do arquivo php.ini é diferente entre os sistemas operacionais. No Debian/Ubuntu?, o padrão é /etc/php[4|5]/apache[!2]/php.ini. Para descobrir onde o arquivo fica em seu sistema operacional, crie um arquivo chamado info.php no diretório raiz do seu servidor web com o seguinte do quadro a seguir, acesse o endereço http://localhost/info.php e procure pela string: "Loaded Configuration File".

Screenshot from 2015-07-17 13:11:05

Após qualquer alteração no arquivo php.ini, reinicie seu servidor web (no nosso caso, o apache2):

# /etc/init.d/apache2 restart

Copiando os arquivos do i-Educar e configurando as permissões

Depois do banco de dados e do PHP configurado, basta copiar os arquivos do i-Educar para o diretório raiz do seu servidor web. No Apache do Debian e Ubuntu, esse diretório geralmente é o /var/www. Descompacte o tar.gz e copie o diretório ieducar para o diretório web.

$ cd /tmp

$ tar xzvf ieducar.tar.gz

$ mv ieducar /var/www/

Existem dois diretórios em que o i-Educar pode gravar arquivos e que precisam de permissão de escrita (usuários Windows não precisam se preocupar com este passo):

  • intranet/pdf
  • intranet/tmp

Ao invés de dar uma permissão 777, mude o grupo do diretório e dê permissão de escrita para o grupo também:

# chown -R ieducar.ieducar /var/www/ieducar

# chgrp www-data /var/www/ieducar/intranet/pdf

# chgrp www-data /var/www/ieducar/intranet/tmp

# chmod 775 /var/www/ieducar/intranet/pdf

# chmod 775 /var/www/ieducar/intranet/tmp

Configurando os parâmetros de acesso ao banco

Caso o nome do seu banco de dados, do usuário de acesso ou a senha diferirem do que foi sugerido no item Criando o banco de dados, você precisa ajustar uma configuração a mais antes de tentar acessar a aplicação. Acesse o arquivo /var/www/ieducar/intranet/include/clsBanco.inc.php e altere o valor das seguintes variáveis:

/protected/var $strHost = "localhost"; // IP do servidor do banco de dados (localhost para banco de dados na mesma máquina)

/protected/var $strBanco = "ieducardb"; // Nome do banco de dados

/protected/var $strUsuario = "ieducaruser"; // Usuário do banco de dados

/protected/var $strSenha = "ieducar"; // Senha do usuário do banco de dados

Acessando a aplicação

Após realizar os passos anteriores, agora basta acessar o endereço http://localhost/ieducar e começar a navegar pela aplicação. Existem dois usuários pré-definidos para o acesso:

  • Usuário adm (senha adm): usuário com privilégios de criação de usuários;
  • Usuário ieducar (senha ieducar): usuário com privilégios de criação de usuários e de uso dos módulos Escola e Biblioteca.

Observação: se você recebeu um erro 403 Forbidden do Apache, é provável o diretório (sub-diretórios e arquivos) da aplicação esteja sem permissão de leitura. Para corrigir este problema rapidamente, execute os seguintes comandos:

// Procura por todos os sub-diretórios e aplica a permissão 755

$ find /var/www/ieducar -type d -exec chmod 755 {} \;

// Procura por todos os arquivos e aplica a permissão 644

$ find /var/www/ieducar -type f -exec chmod 644 {} \;

Criando um virtual host no Apache 2

Este passo não é necessário para o funcionamento do i-Educar mas facilita o acesso a aplicação no ambiente de desenvolvimento, ao permitir o acesso ao i-Educar através de URLs como http://ieducar e http://ieducar.local. Crie um arquivo chamado ieducar.local no diretório /etc/apache2/sites-available/ com o seguinte conteúdo:

Screenshot from 2015-07-17 17:41:45

Edite o arquivo /etc/hosts (no Windows esse arquivo fica em C:\WINDOWS\system32\drivers\etc\hosts) e adicione a seguinte linha:

127.0.0.1 ieducar.local

Reinicie o Apache:

# /etc/init.d/apache2 restart

Acesse o endereço http://ieducar.local. Se tudo estiver correto, a tela inicial irá aparecer.


Last edited by Caroline Salib