Como instalar o PHP no IIS
Este texto foi classificado como Muito bomTutorial que ensina de forma clara e simples o passo a passo de como instalar e configurar o PHP no Internet Information Services (IIS). Windows Server com PHP funciona... :)
Quando eu estava em São Paulo, no Campus Party aconteceu duas vezes do And After sobrecarregar o servidor, sair do ar e prejudicar outros clientes do servidor compartilhado.
Para resolver o problema resolvi partir para um servidor dedicado (não só para o And After, mas também outros para sites/serviços que eu administro) e para isso tive que aprender um pouco sobre configuração de servidor, pois agora eu sou responsável por isso sem painel (plesk, cpanel, etc...), está tudo "nu e cru", direto no IIS.
Uma das coisas que eu nunca tinha feito era configurar o PHP no IIS e procurando pela internet encontrei vários tutoriais: muito extensos, com informações faltando, tive que juntar informações de vários artigos (e fingir que não li tantas outras) para encontrar o caminho mais curto para essa configuração. Os tutoriais em inglês foram os que mais ajudaram, então fiz um passo a passo do que eu fiz para configurar aqui, descartando as algumas configurações que não tiveram impacto nenhum no funcionamento do PHP (pelo menos até agora).
Neste artigo não vou explicar como instalar e configurar o IIS, vou apenas ensinar como conigurar o PHP supondo que o IIS já está funcionando e rodando em sua máquina.
Como configurar o PHP no IIS
Em três passos é possível estar com o PHP instalado e configurado, vou explicar da forma mais rápida e direta possível, lembrando que estes passos são para quem já tem o IIS instalado e rodando na máquina.
Instalar o PHP
Faça o download do PHP, a versão que eu utilizei foi a 5.2.8, recomendo que você utilize sempre a última versão. Não se esqueça de baixar da lista Windows Binaries, já que ele será instalado no IIS.
O download é um arquivo .zip, descompacte este arquivo na pasta C:PHP (você pode esoclher qualquer pasta, esta será a pasta utilizada para este tutorial).
Na pasta que você descompactou, procure pelo arquivo php.ini-recommended
Copie este arquivo para C:WINDOWS OU para C:WINNT, depende da versão do SO no seu servidor.
Renomeio o arquivo php.ini-recommended (o que está na pasta do windows) para php.ini
Pronto, o PHP está instalado.
O que você precisa fazer para funcionar no IIS é o seguinte, abra o arquivo php.ini e procure pela linha de configuração cgi.force_redirect. Ela está como comentário (tem um ; no início da linha) e vai estar com o valor 1.
Retire o ; para esta linha deixar de ser comentário e troque o valor para 0 no lugar do 1 que tinha antes.
Este foi o passo mais importante e que eu mais demorei para resolver da configuração PHP no IIS, então não esqueça de fazer o que está aí em cima!
Não vou dar muitas explicações sobre as configurações do PHP, se você quiser realmente configurar ele para o que você precisa você deve ler o php.ini (que foi copiado para a pasta do windows) e ir alterando as configurações por lá.
Configurando as extensões do PHP
Procure pela linha da configuração "extension_dir" (sem aspas) no php.ini e coloque o valor "C:PHPext" (lembrando que neste caso C:PHP é o local onde descompactei os arquivos).
Existe uma série de configurações das extensões, você pode selecionar extensões para serem carregadas
Em alguns tutorias que li diziam que era necessário copiar todos os arquivos que não são dll´s da pasta C:PHP para C:WindowsSystem32.
Eu não fiz isso e funcionou.
Com o PHP instalado e configurado, você precisa fazer com que o IIS reconheça a extensão PHP, então vamos lá.
Abra o IIS, clique com o botão direito em Web Sites e clique em Propriedades.
Vá para a aba Home Directory e clique em Configuration (botão localizado na parte de "Apliccation settings")
Clique em ADD, no campo Executable clique em Browse e procure o arquivo php5isapi.dll (neste caso ele está em C:PHPphp5isapi.dll)
No campo Extension digite .php
Clique em OK e volte para o IIS.
Se você já tem sites configurados no servidor aplique este passo em todos os sites que deverão rodar PHP.
No IIS clique com o botão direito em Web Service Extension e em Add a New Web service extension
Em Extension Name digite PHP, clique em Add para adicionar um arquivo e procure novamente pelo php5isapi.dll.
Clique em OK e reinicie o servidor, seu servidor deve estar pronto para interpretar scripts em PHP.
Testando
Em algum site configurado no IIS (se não tiver nenhum, configure-o) crie um arquivo teste.php com o código abaixo
<?php phpinfo(); ?>
Abra o navegador e execute o arquivo, exemplo: http://localhost/teste.php
Deverá aparecer uma página com as configurações do PHP funcionando.
Se der erro que o arquivo não existe (404) verifique se você configurou corretamente o site (teste em um arquivo .html para ver se ele é encontrado), se o site estiver funcionando corretamente pode ser problema na configuração da extensão.
Vá em Web Service Extension dentro do IIS e veja se a extensão PHP que você adicionou está aparecendo.
Vverifique se ela está aparecendo nas configurações do aplicativo (Web sites -> Home directory -> configuration) a extensão .php.
Espero ter ajudado, aqui tudo funcionou certinho seguindo estes passos! :)
Relacionamento de tabelas no Data Mapper (CI)
Gerador de senha aleatória em PHP [UPDATE]
Selecionando posts relacionados pelas tags (Code Igniter com Data Mapper)
Permitindo o download e execução de aplicativos no IIS
Chris Benseler
9/2/2009 12:47:00
[Responder este comentário]
Tharcísio
20/4/2009 16:02:00
[Responder este comentário]
Guilherme Serrano
Rodolfo da Silva Neves
[www] 12/6/2009 23:00:00
Gostei muito da sua simpatia e espontaneidade, principalmente em ajudar as pessoas.
Gostaria de que pudesse dar-me um conselho: sou presidente de uma entidade assistencial, de caráter ambientalista, a Made in Brazil, e estou com uma dúvida cruel. Estou fazendo um site - o site que se encontra no ar agora está uma porcaria - e não sou um grande programador, na realidade estou muito longe de ser um.
Tenho uma noção razoável de asp 3.0 e quase nenhuma de php.
Eu consegui configurar o php para rodar no iis server e está rodando numa boa. Preciso construir um site de grande porte, com uma grande quantidade de serviços voltados para o associado do site, mas ainda não sei qual das duas linguagens vai atender-me muito bem. Vou usar servidor próprio, e tenho vários componentes instalados, como dundas para envio de arquivos, componentes para criptografia de senhas, etc, tudo para o asp.
Já disseram-me para fazer o site em php, mas conheço muito pouco do mesmo - não consigo fazer 10% do que eu faço em asp com o php e não tenho muito tempo para aprender o mesmo - até gostaria.
O que sugere? Acha que o asp vai me atender?
Para que saiba o que eu quero dizer com grande porte, pense em algo como a wikipedia - mas e claro que não tanto, he he he...
Obrigado, meu amigo
[Responder este comentário]
Guilherme Serrano
[www]
Chris Benseler
[www]
Alan Lemos
18/6/2009 17:30:00
[Responder este comentário]
Guilherme Serrano
Roberto Oliveira
25/7/2009 23:11:00
não encontrei onde configurar o "Web Service Extension" e o "Add a New Web service extension"
porem, quando testo o php, ele fica lento carregando, e por fim aparece a seguinte mensagem:
CGI Timeout
The specified CGI application exceeded the allowed time for processing. The server has deleted the process
vc sabe o que estaria acontecendo neste caso ?
[Responder este comentário]
Roberto Oliveira
EDIVAL DE PAULA RONQUI
Tenho instalado o Windows XP e atualizei o IIS 5.1 que é padrão para o IIS 6.0, mas nao existe esta opção "Web Service Extension" e o "Add a New Web service extension".
Guilherme Serrano
Felipe
Guilherme Serrano
Alexandre
28/9/2009 09:35:00
[Responder este comentário]
Guilherme Serrano
João Paulo
21/10/2009 16:10:00
[Responder este comentário]
Guilherme Serrano
Warley Lima
9/12/2009 02:13:00
[Responder este comentário]
Guilherme Serrano
Graduado em design, viciado em web, adoro desenvolvimento, mashups, usabilidade, o universo e tudo mais.
Vivo de e para internet. :)
Nível do usuário: Senior
Publicações: 507
Karma: 52439
Pontos: 30








