04. Instalação e configuração em ambiente windows Servidor Apache O servidor http que será utilizado neste curso é o Apache, que está disponível para download em “http://www.apache.org/httpd.html”. A instalação do Apache é bastante simples, similar a qualquer aplicação windows. Para usuários do Windows 95 o winsock2 deve estar instalado no sistema. Se não estiver, o download pode ser feito em: http://www.microsoft.com/windows95/downloads/contents/wuadmintools/s_wunetworkingtools/w95sockets2/ Depois de instalado, é necessário fazer a configuração do servidor, através do arquivo httpd.conf. Todas as configurações estão comentadas. O mínimo que deve ser configurado é o diretório onde os documentos estarão, através da opção DocumentRoot. Basta procurar a opção e escrever o nome do diretório em seguida, como no exemplo: DocumentRoot "C:\vivas\" Uma outra configuração básica é a DirectoryIndex, que informa ao servidor quais os arquivos serão exibidos automaticamente como índice do diretório. É isso que faz com que ao digitar, por exemplo, “www.guia-aju.com.br”, o servidor saiba qual dos arquivos do diretório deve ser exibido. Abaixo temos um exemplo da utilização do DirectoryIndex: DirectoryIndex index.html index.htm index.php3 Para executar o servidor Apache, basta ir ao diretório onde foi instalado e digitar “Apache”. Na primeira execução é recomendável fazer isso pelo prompt do DOS, para verificar qualquer mensagem de erro. Um erro comum ocorre na linha ServerName, que deve ser configurada com o endereço ip da máquina. ServerName 192.168.1.1 Feito isso, crie um arquivo com um dos nomes definidos como índice e coloque no diretório definido como root. Execute o servidor Apache e tente acessar o endereço “http://localhost” pelo browser. Se a página for exibida, é porque o servidor foi instalado corretamente. 17 PHP O PHP pode ser conseguido em “www.php.net”, e sua instalação também é simples. Atualmente existem duas opções de download: a primeira é no formato padrão de instaladores do Windows, e neste caso não é necessário explicar, já que o padrão citado é bastante simples. Para quem gosta de “sujar as mãos”, existe a opção de download dos arquivos em formato zip, que necessitam de configuração manual. Veremos a seguir os passos necessários para isso: Descompactar os arquivos para algum diretório (no nosso exemplo, “c:\php”) Renomear o arquivo de configuração. O arquivo “php.ini-dist” deve ser renomeado (ou copiado) para php.ini. Depois disso, o arquivo pode ser editado, bastando modificar a linha extension_dir, que deve conter o diretório onde estão os módulos (c:\php). Veja o exemplo: extension_dir = c:\php Além disso é necessário descomentar a linha referente o módulo mysql, já que iremos utilizá-lo. Basta tirar o “;” (ponto-e-vírgula) do início da linha: ;extension=php_mysql.dll Feito isso, podemos partir para a configuração do servidor Apache, necessária para que este reconheça o PHP. Editando novamente o arquivo httpd.conf, as linhas a seguir devem ser adicionadas no final do arquivo: ScriptAlias /php/ "c:/php/" AddType application/x-httpd-php .php4 .php Action application/x-httpd-php "/php/php.exe" A primeira linha cria um atalho (chamado de /php/) para o diretório onde está o PHP. A Instrução ScriptAlias cria no Apache um atalho válido apenas para execução de programas. A segunda linha cria um “tipo” para o PHP, associando todos os arquivos com as extensões “.php4” e “.php” ao interpretador PHP, aqui chamado de application/x-httpd-php. A terceira linha define que o executável do interpretador PHP, chamado pelo Apache de application/x-httpd-php, é o /php/php.exe. Observe que o 18 diretório é o mesmo definido na linha acima, e na verdade é um atalho para o arquivo c:/php/php.exe. Depois de salvar o arquivo, podemos testar se a instalação do PHP foi bem sucedida. A melhor maneira é criar um arquivo chamado teste.php e salvar no diretório raiz (DocumentRoot) do servidor Apache. O arquivo deve conter a seguinte informação: Acessando a página através do servidor (http://localhost/teste.php), devemos ter como resultado uma listagem de todas as configurações do PHP, incluindo o módulo mysql, que foi definido como ativo no arquivo php.ini. mySQL O banco de dados mySQL pode ser conseguido em “http://www.mysql.com/”. Sua instalação também é bastante simples, também no modelo de instalação de qualquer aplicativo para Windows. As configurações necessárias são relativas a segurança, e exigem um conhecimento mais avançado de administração de servidores. Como essa instalação destina-se apenas a praticar o PHP, não é necessário fazer muitas alterações na segurança, bastando apenas saber como adicionar usuários. Para isto, basta utilizar o comando GRANT, que tem a seguinte sintaxe: GRANT privilegio [(lista_colunas)] [, privilegio [(colunas)] ...] ON {tabela | * | *.* | db.*} TO usuario [IDENTIFIED BY ’senha'] [, usuario [IDENTIFIED BY ’senha'] ...] [WITH GRANT OPTION] Onde privilégio é uma das palavras reservadas listadas a seguir: ALL PRIVILEGES FILE RELOAD ALTER INDEX SELECT CREATE INSERT SHUTDOWN DELETE PROCESS UPDATE DROP REFERENCES USAGE 19 Cada palavra representa um tipo de acesso à(s) coluna(s), tabela(s) ou base(s) de dados listadas logo depois da cláusula ON. usuario deve conter o nome do usuário (login) e o host permitido (ex.: teste@localhost). Abaixo temos um exemplo da utilização do comando grant: GRANT SELECT, INSERON T, UPDATE *TO vivas@localhost IDENTIFIED BY “senhateste”; O exemplo cria o usuário “vivas”, com a senha “senhateste”, que só pode acessar da mesma máquina onde está o servidor (localhost), e só pode utilizar os comandos select, insert e update. Também é possível adicionar usuários utilizando o comando INSERT, pra alterar diretamente na tabela de privilégios, que é a tabela “user” da base de dados “mysql”, que possui os campos para definir nome de usuário, host, senha, e permissões específicas. Utilizando este método é preciso reiniciar o servidor, ou executar o comando FLUSH PRIVILEGES, para que as alterações tenham efeito.