// 
//     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.
//

= Implantando uma Aplicação PHP em um Servidor Web Remoto Utilizando o NetBeans IDE
:jbake-type: tutorial
:jbake-tags: tutorials 
:jbake-status: published
:icons: font
:syntax: true
:source-highlighter: pygments
:toc: left
:toc-title:
:description: Implantando uma Aplicação PHP em um Servidor Web Remoto Utilizando o NetBeans IDE - Apache NetBeans
:keywords: Apache NetBeans, Tutorials, Implantando uma Aplicação PHP em um Servidor Web Remoto Utilizando o NetBeans IDE

Normalmente, uma aplicação PHP real é executada em um servidor remoto. Aplicações remotas são acessadas por um sistema de controle de versão ou por um Protocolo de Transferência de Arquivos (FTP).

WARNING: o NetBeans oferece suporte básico a FTP/SFTP, o suficiente para um desenvolvedor trabalhar sozinho em um projeto simples. Se estiver trabalhando em um projeto complexo com diversos desenvolvedores, é importante usar um sistema de controle de versão. O NetBeans IDE suporta uma série de sistemas de controle de versão. Consulte nossos tutoriais link:../ide/subversion.html[+Subversion+] e link:../ide/git.html[+Git+], por exemplo. Se for necessário o uso de FTP/SFTP com um projeto complexo, considere usar o IDE em conjunto com um cliente de FTP completo e edite o projeto PHP no IDE como um web site local.

*JDK 7 + Windows 7/Vista:* o firewall do Windows 7 e o Windows Vista bloqueia algumas operações do FTP que são acionadas pelo JDK 7. Consulte o link:http://forums.netbeans.org/post-115176.html#113923[+fórum NetBeans+] para a solução desse problema.

Para implantar a aplicação PHP em um servidor remoto, você precisará registrar uma conta em um provedor de hospedagem. Você também pode implantar um banco de dados MySQL no servidor remoto em que você tem uma conta de hospedagem.

Todos os nomes de usuário, senhas e endereços de e-mail são fictícios e utilizados somente como exemplos. A administração da hospedagem bloqueia uma conta, se o usuário não aparecer no fórum por mais de uma semana. Assim, você pode falhar em aplicar exatamente os mesmos nomes de usuário, senhas, endereços de e-mail e outras credenciais do tutorial.


image::images/netbeans-stamp-80-74-73.png[title="O conteúdo desta página se aplica ao NetBeans IDE 7.2, 7.3, 7.4 e 8.0"]


*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 

|Uma conta de hospedagem e 
uma conta FTP em um servidor remoto |Por exemplo, link:http://x10hosting.com/[+x10Hosting+] 
fornece hospedagem em conta FTP gratuita. 

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


== Definindo a Configuração de Execução para Projetos PHP a Serem Hospedados Remotamente

Se você tiver uma conta de hospedagem em um servidor Web remoto e uma conta FTP para transferir os arquivos de código-fonte para o servidor remoto, poderá criar e depurar o seu projeto PHP localmente e, em seguida, implantar no servidor remoto. Com o conceito de Configurações de Execução, você pode alternar entre esses fluxos de trabalho no mesmo projeto NetBeans PHP, alterando o tipo de Configuração de Execução de Web Site Local para web Site Remoto.

Para ativar a execução de uma aplicação PHP em um servidor remoto, você precisa definir uma configuração de execução que contenha um perfil de conexão FTP.

Se você já tiver um projeto com uma configuração de execução default e desejar adicionar uma nova configuração de execução remota, link:project-setup.html#managingProjectSetup[+personalize o seu projeto+]:

1. Clique com o botão direito do mouse no nó do projeto e escolha Propriedades no menu pop-up. O painel Propriedades do Projeto será aberto.
2. Na lista Categorias, selecione Configuração de Execução. O painel Configuração de Execução será aberto.
3. <<chooisngRunConfigurationType,Escolha o tipo de configuração de execução>> e <<specifyFTPConnectionSettings,especifique as definições de conexão (S)FTP>> conforme descrito nas seções abaixo.

Para criar um projeto NetBeans para uma aplicação PHP em um servidor remoto ou para criar um novo projeto que utilize uma configuração de execução remota como default:

1. Inicie o IDE, selecione Arquivo -> Novo Projeto. O painel Novo Projeto será aberto.
2. Em Categorias, selecione PHP e, em Servidor Remoto, Aplicação PHP. Em seguida, clique em Próximo. O painel Nome e Localização é aberto.
3. Especifique o nome do projeto, o local dos arquivos de código-fonte da aplicação e o local dos arquivos internos do projeto (opcional). Clique em Próximo. O painel Configuração de Execução será aberto.
4. <<specifyFTPConnectionSettings,Especifique as definições da conexão FTP>> conforme descrito na seção abaixo.


=== Escolhendo o Tipo de Configuração de Execução

No painel Configurações de Execução, selecione Site Remoto (FTP, SFTP) na lista drop-down Executar Como. A área oculta para definir a configuração será exibida.

Se estiver criando um novo projeto com a aplicação PHP de um assistente de Servidor Remoto, não será necessário selecionar “Executar Como” na lista drop-down. O assistente automaticamente o leva para o painel Conexão Remota. Esse painel só tem os campos URL do Projeto, Conexões Remotas e Diretório de Upload.

image::images/ftp-run-config-blank.png[]


=== Especificando as Definições da Conexão (S)FTP

Para criar uma conexão FTP:

1. Clique em Gerenciar ao lado da lista drop-down Conexão FTP. A caixa de diálogo Gerenciar Conexões Remotas será exibida.
2. Clique em Add. A caixa de diálogo Criar Nova Conexão será aberta. (Ela pode se abrir automaticamente, caso você esteja definindo sua primeira conexão.)
3. No campo Nome da Conexão, digite o nome da nova conexão. Neste exemplo, o nome da conexão é  ``x10hosting`` . Na lista drop-down Tipo, selecione FTP ou SFTP. Clique em OK. A caixa de diálogo Gerenciar Conexões Remotas será exibida com o nome da nova conexão no campo de exibição Nome da Conexão.
4. No campo Nome do Host, digite o nome do Servidor FTP conforme está escrito na mensagem de confirmação da criação da conta FTP. Neste exemplo, o servidor FTP é  ``nbuser.x10.mx`` .
5. No campo Porta, especifique 21.
6. No campo Nome de Usuário, digite seu Nome de usuário FTP conforme está escrito na mensagem de confirmação da criação da conta FTP . Neste exemplo, o nome de usuário do FTP  ``nbuser`` .
7. Preencha o campo Senha. Neste exemplo, a senha é  ``qwerty1234`` .
8. No campo Diretório Inicial, digite o nome do diretório da conta no servidor FTP. Neste exemplo, não há um diretório de conta especificado, digite uma barra no campo. 

image::images/manageremoteconnections.png[]


[start=9.]
. Clique em OK. Você retornará para o painel Configuração de Execução.

[start=10.]
. No campo Diretório de Upload, digite o nome da subpasta no diretório inicial onde será feito o upload do arquivos de código-fonte. O prompt abaixo do campo mostra o URL do host do FTP.

[start=11.]
. Para concluir a configuração de um novo projeto, clique em Finalizar.


== Fazendo upload dos Arquivos de Código-Fonte em um Servidor Remoto

Após você escolher a conexão remota para seu projeto, selecione se deseja fazer upload dos seus arquivos de código-fonte na execução, ao salvar ou manualmente.

* *Ao Executar:* os arquivos de Código-Fonte terão upload no servidor quando o projeto for executado.
* *Ao salvar: *qualquer alteração (criar, editar, renomear, deletar) será imediatamente propagada para seu servidor remoto. Se a operação levar mais de 1 segundo, uma barra de andamento será mostrada.
* *Manualmente:* os arquivos nunca terão upload automático. É preciso utilizar a função de upload do IDE, descrita nesta seção.

image::images/ftp-run-config.png[]

Para fazer upload manualmente dos arquivos do seu projeto para o servidor FTP, clique com o botão direito do mouse no nó Arquivos de Código-fonte do seu projeto e selecione Fazer Upload. Observe que você também pode fazer download de arquivos do servidor FTP no mesmo menu.

image::images/beta-source-upload.png[]

Quando você iniciar o upload de arquivos, será aberta uma caixa de diálogo com uma view em árvore dos arquivos de código-fonte. Nessa caixa de diálogo, você pode selecionar arquivos individuais para fazer ou não upload. Para obter mais informações, consulte a link:http://blogs.oracle.com/netbeansphp/entry/new_download_upload_dialog[+entrada do blog NetBeans PHP+] na caixa de diálogo Upload de Arquivo.

image::images/file-upload-dialog.png[]

Durante o upload dos arquivos, os resultados do upload aparecem em uma guia de saída.

image::images/upload-output.png[]


[[remote-synchronization]]
== Sincronização Remota

Para os desenvolvedores que tiverem que trabalhar em (S)FTP em ambientes de vários desenvolvedores sem o controle de versão adequado, o NetBeans IDE fornece sincronização remota. A sincronização remota permite comparar a cópia local dos arquivos do projeto com as cópias no servidor (S)FTP. Você pode fazer upload da cópia local no servidor ou fazer download da cópia do servidor na máquina local. Quando a cópia no servidor tiver sido atualizada depois de você ter começado a trabalhar na cópia locqal, o NetBeans IDE o avisa de um conflito de arquivos. Quando houver um conflito, o NetBeans IDE permite diferenciar a versão local da versão no servidor e decidir qual versão aceitar, linha a linha.

*Advertência: *a sincronização remota nunca é 100% confiável porque os timestamps nos servidores FTP não são 100% confiáveis. O controle de versão é uma solução mais segura.

*Cuidado: *a sincronização remota trabalha de maneira mais confiável quando você a executa em um projeto inteiro. Você pode executar a sincronização remota em arquivos individuais, mas aí o risco é mais alto.

*Para executar a sincronização remota:*

1. Na janela Projetos (Ctrl-1), expanda o nó do projeto PHP que deseja sincronizar. Clique com o botão direito do mouse no nó Arquivos de Código-Fonte. O menu de contexto aparecerá, incluindo a opção Sincronizar. 

image::images/sync-ctxmenuitem.png[]


[start=2.]
. Selecione Sincronizar. O IDE recupera os nomes dos arquivos e os caminhos do servidor remoto e abre a caixa de diálogo Sincronização Remota.

A caixa de diálogo Sincronização Remota mostra uma tabela de arquivos do projeto. As versões remotas do arquivo estão à esquerda e as versões locais estão à direita. Na coluna do centro, está um ícone que mostra a operação que o IDE executará na sincronização. Os ícones de advertência estão bem à esquerda. Um resumo das operações e problemas aparece na parte inferior da tabela. Uma descrição detalhada de todos os erros aparece abaixo da tabela. Acima da tabela estão conjuntos de caixas de seleção para filtrar quais problemas e operações a caixa de diálogo mostrará. Para obter informações detalhadas sobre essa caixa de diálogo, clique em Ajuda.

image::images/main-dialog.png[]


[start=3.]
. Selecione vários itens da tabela. Na parte inferior da tabela o resumo incluirá, agora, apenas esses itens.

image::images/multiple-items.png[]


[start=4.]
. Clique com o botão direito do mouse nos itens selecionados. Um menu de contexto de operações possíveis será exibido. 

image::images/context-menu.png[]


[start=5.]
. Se um item tiver u m ícone de erro Resolver Conflitos, selecione o item. Uma descrição do erro aparecerá na parte inferior da tabela.

image::images/error-item.png[]


[start=6.]
. Selecione o item com um erro. Selecione Dif... image:images/diff-icon.png[] na linha de botões ou no menu de contexto. A caixa de diálogo Dif será aberta. Nessa caixa de diálogo, reole para baixo para cada diferença entre as versões remota e local do arquivo. Na view gráfica, você pode aplicar ou recusar a aplicar a alteração remota ao arquivo local. Se desejar editar o arquivo manualmente, alterne para a guia Textual. Quando tiver concluído com a dif, clique em OK. Você retornará para a caixa de diálogo Sincronização Remota. A operação para o arquivo é alterada para Upload e o arquivo é marcado com um asterisco, pois você o alterou.

image::images/diff.png[]


[start=7.]
. Se não houver nenhum conflito, clique em Sincronizar. Se tiver selecionado Mostrar Resumo antes de Iniciar, o resumo Sincronizar será exibido para que você possa revisar as oeprações mais uma vez, antes de executar a sincronização. Se você aprovar as operações, clique em OK.

image::images/sync-summary.png[]

O IDE executará a sincronização. Você pode acompanhar o andamento da sincronização em uma janela que o IDE abre.

image::images/sync-progress.png[]


== Executando uma Aplicação PHP


Para executar uma aplicação PHP em um servidor remoto:

1. No painel Propriedades, certifique-se de que o Site remoto esteja selecionado na <<chooisngRunConfigurationType,lista drop-down Executar Como>>.
2. Verifique as definições de Configuração de Execução.
3. Se o projeto estiver definido como principal, clique em image:images/run-main-project-button.png[] na barra de ferramentas.
4. Se o projeto não estiver definido como principal, posicione o cursor no nó do projeto e selecione Executar no menu pop-up.


[[remote-mysql-database]]
== Utilizando um Banco de Dados MySQL Remoto

Os serviços de hospedagem remota como o x10Hosting.com geralmente permitem que você configure um banco de dados MySQL em seus servidores. Você pode criar bancos de dados, gerenciar usuários e copiar, ler, atualizar ou deletar (CRUD) dados com as ferramentas fornecidas pelo serviço de hospedagem remota.

Por exemplo, se você estiver utilizando o x10Hosting.com, crie um banco de dados MySQL efetuando log-in no painel do x10Hosting e abrindo o painel do Banco de dados MySQL. Você também pode criar usuários, designar usuários a bancos de dados e conceder privilégios a usuários no painel Bancos de Dados MySQL. Você poderá, em seguida, utilizar as ferramentas CRUD no painel phpMyAdmin.

Uma alternativa para trabalhar com ferramentas CRUD de bancos de dados remotos é utilizar as funcionalidades CRUD do NetBeans IDE para trabalhar com um banco de dados local. Depois, você poderá copiar ou fazer dump do banco de dados local no banco de dados remoto. No x10Hosting.com, você pode utilizar o painel phpMyAdmin para fazer upload do banco de dados local.

link:/about/contact_form.html?to=3&subject=Feedback:%20PHP%20Remote%20Hosting%20and%20FTP[+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+]

