Configurando o Ambiente - WebGiz
Índice
Configurando o Ambiente do WebGiz
Se você chegou até aqui, então já tem o Apache, PHP e MySQL instalados e funcionando. Então partiremos agora para a inclusão do contexto e as configurações finais para o funcionamento adequado do WebGiz.
Vamos começar criando uma pasta denominada www dentro do nosso diretório padrão para a instalação do WebGiz, caso tenha seguido as recomendações desta instalação em C:\AIXPHP.
Copie o contexto WEBGIZ para dentro da pasta C:\AIXPHP\www.
Se você não tem o contexto do WEBGIZ, pode copiá-lo na pasta \\webosaka\versao-beta-aix\web\webgiz-php\.
Configurações Adicionais do Apache
O próximo passo é fazer algumas configurações adicionais no Apache. Siga as instruções abaixo:
1: Abra o arquivo httpd.conf dentro da pasta C:\AIXPHP\Apache\Conf\.
2: Localize a variável DocumentRoot e altere o caminho para C:\AIXPHP\www que foi o caminho que definimos para incluir as aplicações PHP que o servidor Apache processará. A imagem 1 na figura acima ilustra essa configuração.
3: Localize a variável LoadModule php5_module e aponte para o caminho C:\AIXPHP\PHP\php5apache2_2.dll, caso tenha seguido as orientações da instalação do PHP deste manual. A imagem 2 na figura acima ilustra essa configuração.
4: Localize a variável IfModule dir_module e configure a propriedade DirectoryIndex com a seguinte ordem e texto Index.html index.php. A imagem 3 na figura acima ilustra essa configuração.
5: Localize a variável ilustrada na imagem 4 da figura acima e configure os parâmetros do Directory do PHP exatamente igual ao ilustrado na imagem.
<Directory "C:/AIXPHP/www" > Options Indexes FollowSymLinks AllowOverride all Allow from all </Directory>
Configurações Adicionais do MySQL
Precisaremos habilitar um parâmetro adicional para o MySQL, abra o arquivo my.ini que encontra-se em C:\AIXPHP\MySQL caso tenha seguido as orientações deste manual.
Inclua ao fim do arquivo a variávelopen_files_limit=25000, esta variável é extremamente útil quando se utiliza o LimeSurvey (Avaliação Institucional). Já que esta aplicação trabalha com um alto numero de tabelas do MySQL. Mesmo que o cliente não utilize o LimeSurvey, deixe este parâmetro configurado, uma vez que passar a utilizar não sofrerá com problemas de performance no WebGiz.
Colocar a tag ao final do arquivo para desligar a resolução de nomes do MySQL nas consultas de conexão do banco de dados.
skip-name-resolve
Configurações Adicionais do PHP
Será necessário acertar algumas configurações no PHP.INI para que o contexto funcione adequadamente, para conferir a situação atual dos parâmetros de configuração do PHP é possível utilizar uma função do PHP que exibe como tais parâmetros estão configurados.
A função citada é a PHPinfo(), que pode ser acionada a partir da seguinte URL http://localhost/webgiz/info.php considerando que o apache esteja respondendo pela porta 80.
A página acima exibe a situação atual dos parâmetros de configuração do PHP.INI, esta função permite que você consulte o status de cada configuração ou extensão habilitado para o PHP.
Por padrão apenas as extensões mais comuns vem habilitadas no PHP.INI, será necessário ativar algumas extensões para o funcionamento do WebGiz.
Esta tarefa é realizada editando o arquivo PHP.INI. Caso tenha seguido as orientações de instalação deste manual o arquivo pode ser encontrado no caminho:
'''C:\AIXPHP\PHP\php.ini'''
Alguns parâmetros de configuração devem ser verificados e alterados, localize as linhas abaixo, e altere conforme indicado:
1. short_open_tag (permite declarações simplificadas nos trechos com codidifação php), por padrão de instalação o PHP.INI vem com o parâmetro desativado. Alterar para ON.
short_open_tag = ON;
2. error_reporting = E_ALL & ~E_NOTICE & ~E_WARNING & ~E_DEPRECATED
(define que tipos de erro serão reportados, e se serão reportados ao usuário no navegador.)
3. register_globals (ativa o uso de variáveis globais), por padrão vem configurado para ON. Altere para OFF
register_globals = OFF;
4. display_errors, deve ser configurado como Off.
5. file_uploads, deve ser configurado como ON.
6. UPLOAD_MAX_FILESIZE (define tamanho máximo de arquivos enviados via upload)
Só é necessário alterar este parâmetro caso o tamanho Maximo de arquivos para upload configurado no WebGiz for superior aos 8M definidos por padrão da instalação. Será comentado quando formos tratar a instalação do WebGiz.
7. allow_url_fopen, deve ser configurado como ON.
8. session.save_path, por padrão esta diretiva vem comentada e com valor “/tmp”. Deve ser descomentada a linha e alterado o diretório para C:\AIXPHP\PHP\temp. Lembre-se que criamos esta pasta durante o setup de instalação do PHP.
9. mssql.allow_persistent, deve ser configurado como On;
10. mssql.charset = "ISO-8859-1", por padrão a linha vem comentada. Apenas remova o sinal de ponto e vírgula (;) que precede a mesma;
11. memory_limit = 1024M, Define a quantidade máxima de memória em bytes que um script está permitido alocar. Isto ajuda a prevenir que scripts mal escritos consumam toda memória disponível no servidor. Note que para não ter limite de memória, defina esta diretiva para -1.
12. max_execution_time = 300, Isso configura o tempo máximo, em segundos, que um script é permitido executar antes de ser terminado. Isso ajuda a prevenir que scritps mal escritos de lotar os servidores. O padrão é de 30 segundos. Porém, sabemos que alguns scripts do Giz gasta mais do que este tempo. Altere para 300 segundos.
13. post_max_size = 1024M, Isso configura o tamanho máximo de memória utilizada no envio de um arquivo para o servidor via script PHP.
14. max_input_vars = 50000 Configura quantas variáveis de entrada serão aceitas, com o limite aplicado a cada super global $_GET, $_POST e $_COOKIE separadamente).
Será necessário também ativar algumas extensões do PHP, para ativar as extensões basta remover o 'ponto e virgula (;) que precede a linha da extensão (caso a linha inicie com ;). O sinal de ponto e vírgula ;() no PHP.INI indica um comentário.
As extensões citadas não estão agrupadas como exibido abaixo, devem ser localizadas uma a uma no PHP.INI e ativadas.
- extension=PHP_gd2.dll
- extension=PHP_mbstring.dll
- extension=PHP_mysql.dll
- extension=php_exif.dll
- extension=php_mcrypt.dll
- extension=php_zip.dll
- extension=PHP_fdf.dll
- extension=php_sqlsrv_53_ts_vc9.dll (Provavelmente esta extensão não deve estar contida no arquivo php.ini, sendo assim inclua ao final do arquivo.)
Algumas destas extensões podem já estar ativadas, neste caso estarão sem o sinal de ponto e vírgula (;) e estarão visíveis no PHPINFO.
Após realizar as alterações é interessante reiniciar o EasyPhp
Resumo das Alterações
PHP 5.3.29
Alterações necessárias ao arquivo php.ini:
- short_open_tag = On
- error_reporting = E_ALL & ~E_NOTICE & ~E_WARNING & ~E_DEPRECATED
- display_errors = Off
- register_globals = Off
- file_uploads = On
- upload_max_filesize = 20M (tamanho máximo definido pelo cliente)
- allow_url_fopen = On;
- session.save_path = C:\AIXPHP\PHP\Temp ou “${path}/tmp“
- mssql.allow_persistent = On
- mssql.charset = "ISO-8859-1"
- memory_limit = 1024M
- max_execution_time = 300
- post_max_size = 1024M
- max_input_vars = 50000
- extension=php_gd2.dll (utilizada nos gráficos)
- extension=php_mbstring.dll (utilizada no login)
- extension=php_mysql.dll (conector para MySQL)
- extension=php_exif.dll
- extension=php_mcrypt.dll (utilizada no login)
- extension=php_zip.dll (compactador/descompactador)
- extension=php_sqlsrv_53_ts_vc9.dll (conector para MS-SQL)
- extension=php_xmlrpc.dll (tradutor de XML)
- extension=PHP_fdf.dll