terça-feira, 3 de maio de 2016

WampServer #2 - Configurações (parte 1)


Continuando nossos post sobre WampServer, agora vamos fazer algumas configurações no nosso servidor.


A primeira delas é alterar o idioma para português, claro que, caso você prefira configurar pra uma linguagem diferente é com você rs
Vamos clicar com botão direito no ícone wamp, localizado na barra de tarefas e selecionar o idioma "Português".
A próxima alteração será realizada no arquivo "php.ini" que fica localizado no caminho "iconeWamp/php/php.ini". Por padrão os arquivos ".ini" serão abertos com o bloco de notas do Windows, o que particularmente eu acho muito ruim, então eu sugiro instalar, caso ainda não tenha instalado, o Notepad++, que além de ser leve, possui uma interface muito bacana e é bastante utilizado para edições rápidas de várias extensões de arquivos.

Para localizar o arquivo "php.ini" você pode seguir este caminho "iconeWamp/diretorio www", nesse momento você será redirecionado para a pasta onde ficaram salvos todos os seus projetos, mas agora precisamos localizar o arquivo php.ini "..\bin\apache\apache\bin\php.ini", botão direito sobre o arquivo e selecione o seu editor de preferencia.

Com o arquivo aberto, vamos pesquisar pela chave "post_max_size", por padrão esse valor vem com apenas 3Megas, eu sempre mantenho o valor de 70Megas que é um valor bom para o tamanho máximo da quantidade de imagens permitidas, caso não queria definir um limite (o que é um pouco arriscado) coloque o valor "0".

[...]

Maximum size of POST data that PHP will accept.
; Its value may be 0 to disable the limit. It is ignored if POST data reading
; is disabled through enable_post_data_reading.
; http://php.net/post-max-size
post_max_size = 3M

[...]
A próxima configuração é em relação ao envio de arquivos, vamos pesquisar a chave "File Uploads" e verificar se as configurações estão da seguinte forma:

[...]

;;;;;;;;;;;;;;;;
; File Uploads ;
;;;;;;;;;;;;;;;;

; Whether to allow HTTP file uploads.
; http://php.net/file-uploads
file_uploads = On

; Temporary directory for HTTP uploaded files (will use system default if not
; specified).
; http://php.net/upload-tmp-dir
upload_tmp_dir = "c:/wamp/tmp"

; Maximum allowed size for uploaded files.
; http://php.net/upload-max-filesize
upload_max_filesize = 64M

; Maximum number of files that can be uploaded via a single request
max_file_uploads = 20

[...]

Vamos entender melhor o que são essas configurações:
  • file_uploads = estamos configurando que será possível realizar uploads de imagens;
  • upload_tmp_dir = pasta temporária onde ficará armazenadas as imagens;
  • upload_max_filesize = tamanho total dos uploads realizados em um único POST;
  • max_file_uploads = quantidade máxima de imagens que serão possíveis enviar em um único POST.
Anteriormente alteramos o "post_max_size" para 70M e mencionei "que é um valor bom para o tamanho máximo da quantidade de imagens permitidas", vamos entender o porque:

Consideremos que o tamanho máximo de cada imagem seja de 4Megas.
Se em único post for possível subir 20 imagens de uma vez já teremos usado: 4Megas x 20 imagens = 80Megas de imagem.

Dessa forma estouramos o valor de "upload_max_filesize" e estouramos o valor de "post_max_size" não sobrando espaço nem para realizar o post dos dados.

Essas configurações dependem totalmente da sua aplicação. Se for possível subir mais de 20 imagens em um único post, e você esta trabalhando com imagens muito pesadas, é aqui que você deverá realizar uma analise e definir os valores necessários. E não se esqueça, os valores alterados nesses campos afetam diretamente o valor configurado em "post_max_size".

Este deve ser sempre maior que o valor de "upload_max_filesize ". Considere pelo menos 6Megas para os dados e 4Megas para possíveis erros do PHP. Detalhe, não coloque por exemplo 1000Megas, pois nenhuma hospedagem permite um valor tão grande a menos que você tenha um cloud server que permita tal configuração.

A próxima alteração é referente a timezone do nosso servidor, vamos pesquisar no nosso arquivo por "date.timezone" e alteraremos o valor para "America/Sao_Paulo".
E por último, vamos pesquisar por "error_reporting", e verificar se o valor atribuído é "E_ALL".
Nosso arquivo ficará da seguinte forma:
[Date]
; Defines the default timezone used by the date functions
; http://php.net/date.timezone
date.timezone = America/Sao_Paulo

[...]

; Production Value: E_ALL & ~E_DEPRECATED & ~E_STRICT
; http://php.net/error-reporting
error_reporting = E_ALL

[...]


Após realizar essas alterações clique no botão salvar do seu editor, clique no ícone do wamp com botão esquerdo e selecione "Restart All Services". Assim que o servidor iniciar as alterações passam a funcionar.

Temos mais algumas configurações que precisam ser realizadas, mas estarei explicando em um próximo post.

Por enquanto é isso, caso tenha ficado em dúvida sobre algum passo, pode entrar em contato seja por mensagem ou email, fiquem a vontade.

Até a próxima!

Luiz Fagner Zordan Analista de Sistemas

Graduado em Sistemas de Informação, atualmente trabalhando na Embraer pela FocusNetworks como FullStack. Sou apaixonado por tecnologia, fascinado por jogos e adoro passar o tempo assistindo séries.