// 
//     Licensed to the Apache Software Foundation (ASF) under one
//     or more contributor license agreements.  See the NOTICE file
//     distributed with this work for additional information
//     regarding copyright ownership.  The ASF licenses this file
//     to you under the Apache License, Version 2.0 (the
//     "License"); you may not use this file except in compliance
//     with the License.  You may obtain a copy of the License at
// 
//       http://www.apache.org/licenses/LICENSE-2.0
// 
//     Unless required by applicable law or agreed to in writing,
//     software distributed under the License is distributed on an
//     "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
//     KIND, either express or implied.  See the License for the
//     specific language governing permissions and limitations
//     under the License.
//

= Configurando o Ambiente de Desenvolvimento de PHP no Windows
:jbake-type: tutorial
:jbake-tags: tutorials 
:jbake-status: published
:icons: font
:syntax: true
:source-highlighter: pygments
:toc: left
:toc-title:
:description: Configurando o Ambiente de Desenvolvimento de PHP no Windows - Apache NetBeans
:keywords: Apache NetBeans, Tutorials, Configurando o Ambiente de Desenvolvimento de PHP no Windows

Este tutorial mostra duas formas de configurar o ambiente de desenvolvimento de PHP no sistema operacional Windows. A primeira e mais conveniente é instalar e configurar um pacote AMP (*A*pache, *M*ySQL, *P*HP). Este tutorial mostra como instalar o pacote XAMPP. A segunda maneira, é instalar e configurar cada componente separadamente.


*Para seguir este tutorial, são necessários os recursos e o software a seguir.*

|===
|Software ou Recurso |Versão Necessária 

|link:https://netbeans.org/downloads/index.html[+NetBeans IDE+] |Pacote de download do PHP 

|Um mecanismo PHP |Versão 5. Incluído no link:http://www.apachefriends.org/en/xampp-windows.html[+XAMPP-Windows+]. 

|Um servidor web |É recomendado o link:http://httpd.apache.org/download.cgi[+Apache HTTP Server 2.2+].
Incluído no XAMPP do Windows. 

|Um servidor de banco de dados |link:http://dev.mysql.com/downloads/mysql/5.1.html[+MySQL Server 5.0+] é recomendado.
Incluído no XAMPP do Windows. 

|Um depurador do PHP (opcional) |link:http://www.xdebug.org[+XDebug 2.0 ou superior.+]
 
|===

Geralmente, o desenvolvimento e a depuração são realizados em um servidor web local, enquanto o ambiente de produção está localizado em um servidor web remoto. A configuração de um servidor web remoto é descrita em link:./remote-hosting-and-ftp-account.html[+ Implantado uma Aplicação PHP em um Servidor Web Remoto com o NetBeans IDE+]. Este tutorial ensina como configurar um servidor web local. O suporte a PHP pode ser adicionado a vários servidores web locais (IIS, Xitami e assim por diante), mas, em geral, o link:http://httpd.apache.org/download.cgi[+servidor HTTP Apache+] é usado. O servidor HTTP Apache está incluído no pacote AMP do XAMPP utilizado neste tutorial. Para obter informações sobre como instalar e configurar o servidor HTTP Apache standalone, clique link:http://httpd.apache.org/docs/2.2/install.html[+aqui+].


== Software Necessário

Para criar, executar e depurar os projetos PHP, você precisa do seguinte software:

* O NetBeans IDE para PHP. Os downloads estão disponíveis link:https://netbeans.org/downloads/index.html[+aqui+].
* Um servidor Web. Geralmente, o desenvolvimento e a depuração são realizados em um servidor Web local, enquanto o ambiente de produção está localizado em um servidor Web remoto. A versão atual permite a utilização de um servidor local. A utilização de um servidor remoto com acesso a FTP terá suporte em versões futuras. O suporte a PHP pode ser adicionado a vários servidores Web (IIS, Xitami e assim por diante), mas, em geral, o link:http://httpd.apache.org/download.cgi[+Servidor HTTP Apache+] é utilizado. Clique link:http://httpd.apache.org/docs/2.2/install.html[+aqui+] para obter informações sobre como instalar e configurar o Apache 2.2. 

* O mecanismo PHP. A versão com suporte é o PHP5. Os downloads estão disponíveis link:http://www.php.net/downloads.php[+aqui+].
* O depurador do PHP. O NetBeans IDE para PHP permite que você utilize o link:http://www.xdebug.org[+XDebug+], mas a utilização de um depurador é opcional. A versão recomendada é XDebug 2.0 ou superior, pois é compatível com PHP5.
* Um servidor de banco de dados. Você pode utilizar vários servidores de bancos de dados, embora um dos mais populares seja o MySQL. Os downloads estão disponíveis link:http://dev.mysql.com/downloads/mysql/5.1.html[+aqui+]. 
NOTE:  a versão recomendada do produto é MySQL Server 5.0. Os documentos fornecidos descrevem o trabalho com essa versão.

Depois da instalação, você precisa configurar o ambiente de forma que todos os componentes de software funcionem bem juntos.

Você pode utilizar um <<XAMPP, Pacote>> que contenha o software necessário ou <<installComponentsSeparately,instalar cada componente separadamente>>.


== Utilizando um Pacote AMP

Para que todas as definições de configuração do mecanismo PHP, do servidor HTTP Apache e do servidor de banco de dados MySQL sejam especificadas automaticamente, utilize o pacote AMP. Este tutorial fornece instruções somente para o pacote link:http://www.apachefriends.org/en/xampp-windows.html[+XAMPP-Windows+]. Para obter ajuda com o pacote WAMP, consulte a link:http://wiki.netbeans.org/HowToConfigureXDebug[+wiki do XDebug do NetBeans+].


=== Instalando e Configurando o Pacote XAMPP

A seção descreve como fazer download, instalar e configurar o pacote XAMPP.

*Advertência:* NÃO use XAMPP 1.7.0. Há problemas significativos com o XDebug nessa versão. Use a versão 1.7.1 ou superior, em que esses problemas foram corrigidos.

NOTE: a partir do XAMPP 1.7.2, o XAMPP vem com PHP 5.3, não PHP 5.2.x. O NetBeans IDE para PHP, versão 6.7.x, não oferece suporte às novas funções do PHP 5.3. O NetBeans IDE para PHP 6.8, atualmente disponível como construtor de desenvolvimento, oferece suporte total ao PHP 5.3. Observe também que a instalação do Xdebug difere entre o PHP 5.2.x e o PHP 5.3.

1. faça download do pacote de instalação do link:http://www.apachefriends.org/en/xampp-windows.html[+XAMPP+]. (O XAMPP Lite não inclui o XDebug.)
2. Quando o download tiver sido concluído, execute o arquivo  `` .exe `` .

No Microsoft Vista, a funcionalidade Controle de Acesso do Usuário impede que o instalador do PHP atualize a configuração do httpd Apache. Desative o UAC ao instalar o XAMPP. Consulte o link:http://support.microsoft.com/kb/922708[+Suporte da Microsoft+] para obter mais informações.


[start=3.]
. Você tem a opção de instalar o servidor Apache e o servidor de banco de dados MySQL como serviços. Se instalar o Servidor Apache e o MySQL como serviços, não terá que iniciá-los manualmente pelo Painel de Controle do XAMPP. Observe que você tem a opção de instalar ou desinstalar esses serviços no <<xamppConstolPanel,Painel de Controle do XAMPP>>.

[start=4.]
. Se estiver utilizando o arquivo compactado autoextraível, depois de ele ter sido extraído, execute o arquivo  ``setup-xampp.bat``  para configurar os componentes do pacote. (O instalador do XAMPP executa automaticamente o arquivo).

[start=5.]
. Após configurar, abra o Painel de Controle do XAMPP. (Você pode abri-lo manualmente executando o arquivo  ``XAMPP_HOME/xampp-control.exe``  ou a partir do ícone Painel de Controle do Xampp, que é automaticamente colocado em sua área de trabalho.) Ao abrir o Painel de Controle do XAMPP, observe que os módulos instalados como serviços já estão em execução.

*Advertência: *algumas vezes, no Windows Vista, o  ``xampp-control.exe``  não será executado. No lugar dele, você pode executar o  ``xampp-start.exe`` .

*Advertência: *o  ``arquivo winmysqladmin.exe`` , que é iniciado pelo botão Admin para o MySQL, não funciona. Aparece uma sequência de mensagens de erro, que pode ser parada somente de forma manual, pelo encerramento do processo  ``winmysqladmin`` . Você também não pode acionar o  ``winmysqladmin.exe``  a partir da linha de comandos. Consulte link:http://bugs.xampp.org/view.php?id=71[+http://bugs.xampp.org/view.php?id=71+].

image::images/xampp-control-panel.png[]


[start=6.]
. As caixas de seleção Svc indicam que um módulo está instalado como um serviço do Windows e será automaticamente iniciado na inicialização do sistema. Você pode instalar ou desinstalar os serviços do Windows marcando ou desmarcando a caixa de seleção Svc. A desinstalação de um serviço do Windows não desinstala o módulo, mas requer a inicialização manual do módulo. O painel de controle do XAMPP inclui botões para parar e iniciar módulos e para abrir seus consoles de administração.


=== Verificando a Instalação do XAMPP

1. Execute o browser e digite o seguinte URL:  ``http://localhost`` . A página de boas-vindas do XAMPP será aberta:

image::images/xampp-welcome-page.png[]


[start=2.]
. Para garantir que os servidores Apache e MySQL tenham sido instalados como serviços do sistema, reinicie o sistema operacional, execute o browser e digite o URL  ``http://localhost``  novamente. A página de boas-vindas do XAMPP será aberta. Observe se a página de boas-vindas do XAMPP inclui um menu na margem esquerda, por meio do qual você pode verificar o status dos componentes do XAMPP e executar o  ``phpinfo()`` , entre outras funcionalidades úteis. O  ``phpinfo()``  retornará uma tela com informações de configuração sobre os componentes do XAMPP. 

image::images/xampp-phpinfo.png[]


=== Instalando e Ativando o Depurador XDebug

É necessário configurar a pilha PHP para utilizar o XDebug. Se você estiver utilizando o <<xdebug-xampp-171,XAMPP 1.7.1>>, incluído com o PHP 5.2.6, ou o <<xdebug-xampp-172,XAMPP 1.7.2>>, incluído com o PHP 5.3 o processo apresenta diferenças.

Muitos usuários têm tido dificuldades para fazer com que o XDebug funcione em seus sistemas. Consulte a link:http://wiki.netbeans.org/HowToConfigureXDebug[+nossa wiki+] e o link:http://forums.netbeans.org/viewforum.php?f=13&sid=5b63e6774fe7859b5edd35b1192d8efd[+Fórum de Usuários do Editor PHP do NetBeans+] para obter ajuda.


[[xdebug-xampp-171]]
==== XDebug no XAMPP 1.7.1 (PHP 5.2)

É necessário fazer download do XDebug, colocar o arquivo .dll no diretório das extensões php e configurar php.ini para que localize e utilize esse arquivo.

1. Faça download do _thread-safe_ link:http://www.xdebug.org/download.php[+XDebug+] mais recente compatível com sua versão do PHP. Os links para download estão listados em Releases. Copie o arquivo  ``.dll``  para seu diretório  ``XAMP_HOME/php/ext`` . ( ``XAMPP_HOME``  se refere ao seu diretório de instalação do XAMPP ou do XAMPP Lite, como  ``C:\Arquivos de Programas\xampp``  ou  ``C:\xampplite`` .)
2. Localize e abra o arquivo  ``php.ini``  ativo para seu XAMPP. Ele está localizado por default no diretório `` XAMPP_HOME/apache/bin`` . Confirme qual arquivo  ``php.ini``  está ativo executando  ``phpinfo()``  e procurando o Arquivo de Configuração Carregado.
3. Como o otimizador Zend bloqueia o XDebug, é necessário desativar o otimizador Zend. No arquivo  ``php.ini `` ativo, localize as linhas a seguir e as delete ou as marque como comentários (Para estar seguro, procure e comente todas as propriedades relacionadas ao Zend):

[source,ini]
----

[Zend]
;zend_extension_ts = "C:\Program Files\xampp\php\zendOptimizer\lib\ZendExtensionManager.dll"
;zend_extension_manager.optimizer_ts = "C:\Program Files\xampplite\php\zendOptimizer\lib\Optimizer"
;zend_optimizer.enable_loader = 0
;zend_optimizer.optimization_level=15
;zend_optimizer.license_path =

----

[start=4.]
. Para anexar
 XDebug ao mecanismo PHP, remova o comentário das linhas a seguir nos arquivos  ``php.ini``  (diretamente abaixo da seção [Zend], adicione-os caso não estejam presentes). Algumas notas adicionais foram acrescentadas.

[source,ini]
----

[XDebug]; Only Zend OR (!) XDebug
zend_extension_ts = "./php/ext/php_xdebug<-version-number>.dll"
; XAMPP and XAMPP Lite 1.7.0 and later come with a bundled xdebug at <XAMPP_HOME>/php/ext/php_xdebug.dll, without a version number.xdebug.remote_enable=1xdebug.remote_host=127.0.0.1xdebug.remote_port=9000
; Port number must match debugger port number in NetBeans IDE Tools > Options > PHPxdebug.remote_handler=dbgpxdebug.profiler_enable=1xdebug.profiler_output_dir="<XAMPP_HOME>\tmp"
----

Defina a propriedade  ``xdebug.remote_enable``  como 1, não "true" ou qualquer outro valor.

NOTE:  certifique-se de que os caminhos especificados coincidam com o local dos arquivos correspondentes, conforme determinado durante a instalação.


[start=5.]
. Salve o  ``php.ini`` .

[start=6.]
. Execute a <<xamppConstolPanel,Aplicação Painel de Controle do XAMPP>> e reinicie o servidor Apache.
Consulte link:http://wiki.netbeans.org/HowToConfigureXDebug[+nosso wiki+] e a link:http://www.xdebug.org/docs/install[+documentação do XDebug+] para obter mais informações sobre como configurar o XDebug.


[[xdebug-xampp-172]]
==== Xdebug no XAMPP 1.7.2 (PHP 5.3)

O XAMPP 1.7.2 está incluído com o arquivo .dll apropriado do Xdebug. Você só precisa configurar o  ``php.ini``  para utilizar esse arquivo. Observe que todas as definições do Xdebug apresentam um texto explicativo.

1. Localize e abra o  ``XAMPP_HOME\php\php.ini``  para edição. Trata-se do único arquivo  ``php.ini``  no XAMPP 1.7.2.
2. Localize e elimine o comentário da linha  ``zend_extension = "XAMPP_HOME\php\ext\php_xdebug.dll"`` .
3. Localize e elimine o comentário da linha  ``xdebug.remote_host=localhost`` . Altere o valor da definição de  ``localhost``  para  ``127.0.0.1`` .
4. Localize e elimine o comentário da linha  ``xdebug.remote_enable=0`` . Altere de 0 para 1.
5. Localize e elimine o comentário da linha  ``xdebug.remote_handler="dbgp"`` .
6. Localize e elimine o comentário da linha  ``xdebug.remote_port= 9000`` .
7. Salve o  ``php.ini`` .
8. Execute a <<xamppConstolPanel,Aplicação Painel de Controle do XAMPP>> e reinicie o servidor Apache.

Consulte link:http://wiki.netbeans.org/HowToConfigureXDebug[+nosso wiki+] e a link:http://www.xdebug.org/docs/install[+documentação do XDebug+] para obter mais informações sobre como configurar o XDebug.


== Instalando os Componentes Separadamente


=== Servidor HTTP Apache

1. Faça download do link:http://httpd.apache.org/download.cgi[+servidor HTTP Apache2+].
2. Execute o arquivo de instalação  ``.msi`` . O assistente de instalação é iniciado. Siga as instruções.

No Microsoft Vista, não instale o Servidor Apache na localização default, que é Arquivos de Programas. Todos os arquivos em Arquivos de Programas estão protegidos contra gravação.


[start=3.]
. Quando a instalação tiver sido concluída, reinicie o servidor Apache.

[start=4.]
. Para verificar se a instalação foi bem-sucedida, execute o browser e insira o seguinte URL:

[source,ini]
----

  http://localhost/
----
A página de teste de boas-vindas do Apache será aberta: 

image::images/install-apache-it-works-port80.png[]


==== Solução de Problemas

Como default, o servidor Apache escuta a porta 80. Essa porta pode já estar sendo utilizada por outros serviços, por exemplo, o Skype. Para solucionar o problema, altere a porta que o servidor escuta:

1. Abra o arquivo de configuração do servidor web Apache  ``httpd.conf`` . Por default, o arquivo está localizado em  ``C:\Arquivos de Programas\Apache Software Foundation\Apache<version>\conf\`` 
2. Localize a linha  ``Listen 80``  e altere o número da porta, por exemplo,  ``8080`` . Salve o arquivo.
3. Reinicie o servidor web Apache.
4. Para verificar se o servidor web está funcionando, execute o browser, insira o URL e especifique o número da porta de forma explícita:  ``http://localhost:8080`` 

Você também pode interromper os processos que possivelmente ouvem a porta 80. No Gerenciador de Tarefas, selecione o nome de arquivo relevante e clique em Encerrar Processo.

Encontre mais informações sobre como instalar e configurar o servidor link:http://httpd.apache.org/docs/2.2/install.html[+aqui+].


=== Mecanismo PHP


[start=1.]
. Faça download do link:http://windows.php.net/download/[+instalador binário do Windows+] para a versão PHP5 de sua escolha.

*Importante: *se não houver um instalador disponível na versão do PHP que você deseja instalar, instale-o manualmente pelo arquivo .zip. Consulte link:http://php.net/manual/en/install.windows.manual.php[+Etapas de Instrução Manual+] na documentação do php.net.


[start=2.]
. Quando o download estiver concluído, execute o arquivo de instalação  ``.msi`` . O assistente de instalação é iniciado.

[start=3.]
. No painel Diretório de Configuração do Apache, especifique o diretório onde o arquivo  ``httpd.conf``  está localizado, a definição default é  ``C:\Arquivos de Programas\Apache Software Foundation\Apache<versão>\conf\`` . O processamento do PHP será ativado automaticamente.

[start=4.]
. Se você desejar utilizar o servidor de banco de dados MySQL, escolha a opção de instalação Completa ou selecione os itens MySQL e MySQLi na lista Extensões.

[start=5.]
. Depois que a instalação tiver sido concluída, reinicie o servidor Apache.

[start=6.]
. Para verificar se o mecanismo PHP foi instalado com êxito e o processamento do PHP foi ativado na configuração do Apache:
* Abra o Bloco de Notas ou outro editor de texto. Crie um arquivo e digite o texto a seguir:

[source,php]
----

<?php 
     echo "PHP has been installed successfully!";
?>
----
* Salve o arquivo na pasta htdocs como `test.php`. O caminho padrão é  ``C:\Program Files\Apache Software Foundation\Apache<version>\htdocs\test.php`` 
* Execute o browser e digite o seguinte URL:  ``http://localhost:<porta>/test.php`` . A página a seguir será aberta:

image::images/install-php-test.png[]


==== Solução de Problemas

Se a página não abrir:

1. Reinicie o servidor Apache.
2. Verifique se o arquivo de configuração do servidor Apache httpd.conf contém as seguintes linhas:

[source,ini]
----

  AddType Application/x-httpd-php .php 
  LoadModule php5_module "c:/php/sapi/php5apache2_2.dll"
----

[start=3.]
. Se as linhas estiverem ausentes, adicione-as, salve o  ``httpd.conf``  e reinicie o Apache.

[start=4.]
. Atualize a página http://localhost:<port>/test.php.


=== Servidor de Banco de Dados MySQL

Encontre informações detalhadas em link:../ide/install-and-configure-mysql-server.html[+instalando e configurando o servidor de banco de dados MySQL+].


=== XDebug

1. Faça download do link:http://www.xdebug.org[+XDebug+].
2. Instale o XDebug na pasta  ``php/`` . Você precisará do caminho para a pasta para <<settingUpEnvironment,configurar o ambiente>>.


=== Configurando o Ambiente

1. Se a sua instalação seguir as definições default, o processamento do PHP será ativado automaticamente.
2. Para anexar o 
 XDebug ao mecanismo PHP, localize o arquivo  ``php.ini``  e adicione as seguintes linhas a ele:

Para um mecanismo PHP 5.2 *seguro para thread*:


[source,ini]
----

zend_extension_ts="<path to the php folder>/php_xdebug-<version-number>.dll"
xdebug.remote_enable=1
----

Para um mecanismo PHP 5.2 *não seguro para thread*:


[source,ini]
----

zend_extension_nts="<path to the php folder>/php_xdebug-<version-number>.dll"
xdebug.remote_enable=1
----

Para *qualquer* mecanismo PHP 5.3:


[source,ini]
----

zend_extension="<path to the php folder>/php_xdebug-<version-number>.dll"
xdebug.remote_enable=1
----

Alguns usuários observam também que podem precisar incluir as seguintes linhas, embora outros usuários não precisem:


[source,ini]
----

xdebug.remote_host=127.0.0.1xdebug.remote_port=9000
; Port number must match debugger port number in NetBeans IDE Tools > Options > PHPxdebug.remote_handler=dbgp
----

Clique link:http://www.xdebug.org/docs/install[+aqui+] para obter mais informações sobre como configurar o XDebug.

NOTE:  certifique-se de que os caminhos especificados coincidam com os nomes e os locais dos arquivos correspondentes, conforme determinado durante a instalação.


[start=3.]
. Para ter certeza de que o mecanismo PHP instalado anteriormente suporte a utilização do servidor de banco de dados MySQL:

1. Clique em Iniciar > Painel de Controle.
2. No Painel de Controle, selecione Adicionar ou Remover Programas.
3. No painel Adicionar ou Remover Programas, selecione a área PHP <número de versão> área e clique em Alterar. O Assistente Configuração do PHP será Iniciado. Clique em Próximo.
4. No painel Alterar, reparar ou remover instalação, selecione Alterar e clique em Próximo.
5. No painel Configuração do Servidor Web, selecione a versão do servidor Apache: no nosso exemplo é o Módulo Apache 2.2.x. Clique em Próximo.
6. No painel Diretório de Configuração do Apache, especifique o diretório onde o arquivo de configuração do Apache  ``httpd.conf``  está localizado. Clique em Próximo.
7. No painel Escolher Itens para Instalar, expanda o nó Extensões e selecione os itens MySQL e MySQLi. Clique em Próximo.
8. No painel Pronto para alterar PHP <número de versão>, clique em Alterar.
9. No painel Assistente de Configuração do PHP <número de versão> Concluído, clique em Finalizar.

link:/about/contact_form.html?to=3&subject=Feedback:%20Configuring%20PHP%20on%20Windows[+Enviar Feedback neste Tutorial+]


Para enviar comentários e sugestões, obter suporte e manter-se informado sobre os desenvolvimentos mais recentes das funcionalidades de desenvolvimento PHP do NetBeans IDE, link:../../../community/lists/top.html[+junte-se à lista de correspondência users@php.netbeans.org+].

link:../../trails/php.html[+Voltar à Trilha do Aprendizado PHP+] 

