Manual/1.1.X/Instalacao

Instalando o i-Educar

Índice

  1. Download do software
  2. Crie o banco de dados
  3. Edite o arquivo de configuração e conceda permissões de escrita
  4. Configure o Apache ou crie um Virtual Host
  5. Acesse a aplicação
  6. Configure o PHP

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.

Download do software

Faça o download dos arquivos do sistema antes de prosseguir. A versão atual,  1.1.0, está disponível em pacotes ZIP e GZip. Descompacte o pacote de sua preferência no diretório raiz do seu servidor web Apache (no Debian, geralmente o diretório raiz é /var/www).

$ cd /var/www
$ mkdir ieducar; cd ieducar
$ tar -xzvf /caminho/pacotes/ieducar-1.1.X.tar.gz

Crie 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 passos descritos nessa seção irão criar:

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

Observação: você pode usar o nome de usuário, banco de dados e senha que desejar. Esses são apenas nomes padrões que a aplicação usa para conectar-se ao banco.

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

$ su
# su - postgres
# psql

Alternativamente, com o sudo:

$ sudo -u postgres psql

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

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

Crie o banco de dados:

postgres=# CREATE DATABASE ieducar WITH TEMPLATE = template0 OWNER = ieducar ENCODING = 'LATIN1';
postgres=# \q

Execute o arquivo ieducar.sql que vem no i-Educar. O diretório em que esse arquivo reside é o misc/database.

$ sudo -u postgres psql -d ieducar -f misc/database/ieducar.sql

Atenção: em algumas plataformas, o restore do banco pode acabar em um erro FATAL. Se isso acontecer, experimente fazer o restore no mesmo diretório em que se encontra o arquivo ieducar.sql.

Novamente no psql, execute o seguinte comando para configurar o search_path:

$ sudo -u postgres psql ieducar
postgres=# ALTER DATABASE ieducar SET search_path TO "$user", public, portal, cadastro, acesso, alimentos, 
consistenciacao, historico, pmiacoes, pmicontrolesis, pmidrh, pmieducar, pmiotopic, urbano;
postgres=# \q;

Edite o arquivo de configuração e conceda permissões de escrita

O i-Educar armazena algumas configurações necessárias para a aplicação em um arquivo chamado ieducar.ini (em configuration/), que possui uma sintaxe bem simples de entender. Caso tenha criado o banco de dados, nome de usuário ou senha com um valor diferente de ieducar, basta editar esse arquivo para que corresponda as suas escolhas:

[production]
; Configurações de banco de dados
app.database.dbname   = ieducar
app.database.username = ieducar
app.database.hostname = localhost
app.database.password = ieducar
app.database.port     = 5432

Exemplo: caso tenha nomeado seu banco de dados com ieducar_db, o usuário com ieducar_user e a senha com ieducar_pass, o ieducar.ini ficaria da seguinte forma:

[production]
; Configurações de banco de dados
app.database.dbname   = ieducar_db
app.database.username = ieducar_user
app.database.hostname = localhost
app.database.password = ieducar_pass
app.database.port     = 5432

Depois, conceda permissões de escrita nos diretórios intranet/tmp e intranet/pdf. Uma forma prática é dar permissão de escrita para o usuário dono do diretório e para usuários de um grupo. Nesse caso, mudaremos o grupo desses diretórios para o grupo do usuário Apache.

# chmod 775 intranet/tmp intranet/pdf
# chgrp www-data intranet/tmp intranet/pdf

Observação: www-data é o nome do grupo Apache padrão em sistemas Debian. Em outros sistemas, esse nome pode ser httpd, apache ou _www. Substitua de acordo com o usado em seu sistema operacional.

Configure o Apache ou crie um Virtual Host

A partir da versão 1.1.X, o i-Educar inclui, por padrão, um arquivo chamado .htaccess no diretório raiz da aplicação. Esse arquivo contém diretivas de configuração do servidor Apache que tornam o i-Educar mais seguro. Além disso, esse arquivo configura o PHP corretamente para as necessidades da aplicação.

Para que esse arquivo seja executado a cada requisição, é necessário configurar o Apache para que este execute os arquivos .htaccess ou criar um Virtual Host. A primeira opção requer a edição do arquivo /etc/apache2/site-available/default. A única diretiva a ser alterada é AllowOverride? (linha 11) para All (números nas linhas para efeito de explicação):

  9         <Directory /var/www/>
 10                 Options Indexes FollowSymLinks MultiViews
 11                 AllowOverride All
 12                 Order allow,deny
 13                 allow from all
 14         </Directory>

Reinicie o servidor Apache:

# /etc/init.d/apache2 restart

A segunda opção requer a criação de um novo arquivo em /etc/apache2/sites-available/. Crie um arquivo chamado ieducar.local com o seguinte conteúdo:

<VirtualHost *:80>
  ServerName ieducar.local
  DocumentRoot /var/www/ieducar

  <Directory /var/www/ieducar>
    AllowOverride all
    Order deny,allow
    Allow from all
  </Directory>
</VirtualHost>

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

Habilite o Virtual Host:

# a2ensite ieducar.local

Reinicie o servidor Apache:

# /etc/init.d/apache2 restart

Pronto. Agora, acesse o endereço  http://ieducar.local em seu navegador.

Atenção: configurar o seu servidor Apache (seguindo uma das opções apresentadas) é importante para a segurança da aplicação. Assim, evita-se que arquivos importantes como o configuration/ieducar.ini e os relatórios gerados pela aplicação fiquem publicamente expostos para leitura através da Internet.

Acesse a aplicação

Abra o navegador de sua preferência e acesse o endereço  http://localhost/ieducar ou  http://ieducar.local (caso tenha configurado um Virtual Host). Faça o login na aplicação utilizando o usuário administrador. O login e senha para acesso são admin e admin, respectivamente.

Configure o PHP

Esse passo é opcional caso tenha configurado o Apache (via AllowOverride? ou VirtualHost?). Edite o arquivo php.ini da seguinte forma:

  • memory_limit: altere para, no mínimo, 32M (devido a geração de relatórios consumir bastante memória, pode ser necessário aumentar para uma quantidade maior em plataformas 64bits);
    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. E_ERROR é o recomendado para ambientes de produção.
    error_reporting = E_ALL & ~E_NOTICE
    
  • display_errors: altere para Off em produção:
    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/php5/apache2/php.ini. Para descobrir onde o arquivo fica em seu sistema operacional, acesse o endereço http://localhost/ieducar/info.php e procure por Loaded Configuration File.

Após qualquer alteração no arquivo php.ini, reinicie seu servidor web:

# /etc/init.d/apache2 restart