PHP
Este artigo inclui exemplos de como configurar os seguintes aplicativos PHP para serem implantados nos serviços de hospedagem de aplicativos da Kinsta a partir de um repositório do GitHub:
Pré-requisitos
- Os templates de início rápido da Kinsta são armazenados e gerenciados no GitHub; portanto, você precisa de uma conta no GitHub para acessá-los.
- Você precisa criar uma conta MyKinsta para implantar o aplicativo.
PHP
- Você deve fazer login no GitHub e criar um novo repositório a partir desse template (Use this template > Create a new repository): Kinsta – Hello World – PHP.
- No MyKinsta, clique em Aplicativos > Adicionar aplicativo > selecione GitHub, clique em Conectar provedor git > Autorizar e faça login na sua conta do GitHub.
- Escolha o repositório Hello World PHP e um local de centro de dados. Deixe todas as outras configurações como padrão e clique em Continuar em cada etapa.
- Na etapa Resumo, clique em Implantar agora.
Durante a implantação, a Kinsta detecta automaticamente o Comando Start para o processo web e instala as dependências definidas em seu arquivo composer.json. O aplicativo estará disponível assim que a implantação for concluída e a página de boas-vindas da Kinsta será carregada na URL do seu aplicativo.
Você prefere assistir à versão em vídeo?
Configuração do servidor web
A Kinsta configura automaticamente um servidor web Apache que serve seu arquivo index.php a partir do diretório principal do projeto, da maneira usual. Crie um arquivo index.php na pasta do seu projeto como sua página de índice padrão.
Jigsaw
Este é um exemplo de como você pode configurar um site estático com o Jigsaw nos serviços de hospedagem de aplicativos da Kinsta a partir de um repositório do GitHub.
O Jigsaw é um framework de site estático que usa templates Blade para criar layouts de página e Markdown para criar seu conteúdo dentro dos templates, para que você possa produzir sites estáticos simples sem conhecimento complexo de codificação. Mais informações estão disponíveis no site do Jigsaw.
- Faça login no GitHub e crie um novo repositório a partir desse template (Use this template > Create a new repository): Kinsta – Jigsaw Starter.
- No MyKinsta, clique em Aplicativos > Adicionar aplicativo > selecione GitHub, clique em Conectar provedor git > Autorizar e faça login na sua conta do GitHub.
- Escolha o repositório do Jigsaw Starter e um local de centro de dados. Deixe todas as outras configurações como padrão e clique em Continuar em cada etapa.
- Na etapa Resumo, como você deve adicionar os buildpacks necessários antes da implantação, clique em Implantar mais tarde.
- Para que o aplicativo possa criar os arquivos CSS/JS, você precisa adicionar dois buildpacks: Node.js e PHP. Clique em Configurações > Adicionar buildpacks, selecione Node.js > Adicionar buildpacks. Repita isso para o PHP.
- Clique em Implantar agora > escolha a branch necessária > Implantar aplicativo.
O Jigsaw é baseado no Laravel; é um aplicativo baseado em PHP, portanto, durante a implantação, a Kinsta detecta automaticamente o Comando Start para o processo web e instala as dependências definidas no seu arquivo composer.json. O aplicativo estará disponível assim que a implantação for concluída, e uma página padrão do Jigsaw será carregada na URL do seu aplicativo.
Buildpacks
Na maioria dos casos, você desejará que o aplicativo crie os arquivos CSS/JS, portanto, precisará adicionar esses dois buildpacks:
- Node JS
- PHP
Configuração do servidor web
Comando Start
Quando você implanta o aplicativo, a Kinsta cria automaticamente um processo web com npm start
como o Comando Start. Se necessário, você pode alterar isso em Processos.
Laravel
Este é um exemplo de como você pode configurar um aplicativo Laravel para implantar nos serviços de hospedagem de aplicativos da Kinsta a partir de um repositório GitHub.
- Você deve fazer login no GitHub e criar um novo repositório a partir deste template (Use this template > Create a new repository): Kinsta – Hello World – Laravel.
- O Laravel exige que você defina a variável de ambiente
APP_KEY
. Você pode gerar uma chave de aplicativo localmente ou pode usar este gerador de chaves Laravel on-line. - No MyKinsta, clique em Aplicativos > Adicionar aplicativo > selecione GitHub, clique em Conectar provedor git > Autorizar e faça login na sua conta do GitHub.
- Escolha o repositório Hello World Laravel e um local de centro de dados. Em Variáveis de ambiente, em Key 1, digite
APP_KEY
e, em Key 1, cole a chave gerada na Etapa 2, selecione Disponível durante o tempo de execução e Disponível durante o processo de build. - Deixe todas as outras configurações como padrão e clique em Continuar em cada etapa. Na etapa Resumo, clique em Implantar mais tarde para adicionar os Buildpacks necessários antes da implantação.
- Para que o aplicativo possa criar os arquivos CSS/JS, você precisa adicionar dois buildpacks: Node.js e PHP. Clique em Configurações > Adicionar buildpacks, selecione Node.js > Adicionar buildpacks. Repita isso para o PHP.
- Clique em Implantações > Implantar agora > escolha a branch necessária > Implantar aplicativo.
O Laravel é um aplicativo regular baseado em PHP, portanto, durante a implantação, a Kinsta detecta automaticamente o Comando Start para o processo web e instala as dependências definidas no seu arquivo composer.json. O aplicativo estará disponível assim que a implantação for concluída e uma página padrão do Jigsaw será carregada na URL do seu aplicativo.
Você prefere assistir à versão em vídeo?
Conectar um banco de dados
Se você quiser conectar seu aplicativo a um banco de dados, comece criando um banco de dados no mesmo centro de dados em que seu aplicativo está.
- Adicione um banco de dados.
- Conecte o banco de dados ao aplicativo adicionando uma conexão interna e marcando a caixa de seleção Adicionar variáveis de ambiente… Isso preencherá automaticamente as variáveis de ambiente do banco de dados.
- Alguns dos nomes de variáveis (chaves) que o Laravel usa são diferentes dos criados automaticamente no MyKinsta. Edite as chaves das variáveis conforme necessário para corresponderem aos nomes das variáveis definidas no arquivo database.php do Laravel. Abaixo estão os nomes de variáveis correspondentes (chaves) para os tipos de banco de dados que o Laravel suporta.
Variáveis de ambiente
MySQL e PostgreSQL
Chave gerada automaticamente | Chave do Laravel |
DB_HOST | DB_HOST |
DB_PORT | DB_PORT |
DB_NAME | DB_DATABASE |
DB_USER | DB_USERNAME |
DB_PASSWORD | DB_PASSWORD |
DB_CONNECTION_URL | DB_URL |
Redis
Chave gerada automaticamente | Chave do Laravel |
DB_HOST | REDIS_HOST |
DB_PORT | REDIS_PORT |
DB_NAME | REDIS_DB |
DB_USER | REDIS_USERNAME |
DB_PASSWORD | REDIS_PASSWORD |
DB_CONNECTION_URL | REDIS_URL |
APP_KEY do Laravel
O Laravel exige que você defina a variável de ambiente APP_KEY
. Se essa chave não estiver definida, você verá uma página de erro 500 exibida pelo Laravel. Você mesmo pode gerar uma chave de aplicativo localmente ou usar o gerador de chaves on-line do Laravel. Quando tiver uma chave, você poderá adicioná-la como uma variável de ambiente.
Buildpacks
Na maioria dos casos, você desejará que o aplicativo crie os arquivos CSS/JS, portanto, será necessário adicionar esses dois buildpacks:
- Node.js
- PHP
O buildpack que contém a linguagem principal do seu aplicativo deve ser o último na lista de buildpacks. Neste exemplo, PHP é a linguagem principal e deve ser o último buildpack na lista.
Configuração do servidor web
Comando Start
O processo web padrão é heroku-php-apache2
. Este exemplo inclui um arquivo .htaccess que redireciona todas as solicitações para public/index.php para o Laravel. Se necessário, você pode alterar esse comando ao adicionar o aplicativo (Configurar seus processos) ou na página Processos do aplicativo após a implantação. Você pode usar:
heroku-php-apache2 /public
ou
php artisan serve --host 0.0.0.0 --port 8080
Leaf
Este é um exemplo de como configurar um aplicativo PHP do Leaf para ser implantado nos serviços de hospedagem de aplicativos da Kinsta a partir de um repositório do GitHub.
O Leaf é um framework PHP leve, focado na experiência do desenvolvedor, usabilidade e código de alto desempenho. Mais informações estão disponíveis no site do Leaf PHP.
- Você pode fazer login no GitHub e criar um novo repositório a partir deste template (Use this template > Create a new repository): Kinsta – Hello World – Leaf PHP.
- No MyKinsta, clique em Aplicativos > Adicionar aplicativo > selecione GitHub, clique em Conectar provedor git > Autorizar e faça login na sua conta do GitHub.
- Escolha o repositório Hello World – Leaf PHP e um local de centro de dados. Deixe todas as outras configurações como padrão e clique em Continuar em cada etapa.
- Na etapa Resumo, clique em Implantar agora.
Durante a implantação, a Kinsta detecta automaticamente o Comando Start para o processo web e instala as dependências definidas em seu arquivo composer.json. O aplicativo estará disponível assim que a implantação for concluída e a página de boas-vindas da Kinsta será carregada na URL do seu aplicativo.
Você prefere assistir à versão em vídeo?
Configuração do servidor web
Porta
A Kinsta define automaticamente a variável de ambiente PORT
. Você não deve defini-la por conta própria e não deve codificá-la no aplicativo.
Comando Start
Ao implantar o aplicativo, a Kinsta cria automaticamente um processo web que executa heroku-php-apache2
.
Ciclo de vida da implantação
Sempre que uma implantação é iniciada (por meio da criação de um aplicativo ou da reimplantação devido a um commit recebido), o comando composer install
é automaticamente executado.
Statamic
Este é um exemplo de como configurar um aplicativo Statamic para ser implantado nos serviços de hospedagem de aplicativos da Kinsta a partir de um repositório do GitHub.
O Statamic é um CMS de arquivo simples que, por padrão, armazena todos os dados no repositório Git. Antes de você enviar o código para o MyKinsta, instalar o Statamic localmente é a abordagem recomendada para criar e manter seu site. Em seguida, crie uma conta de superusuário, confirme e envie todas as alterações para o repositório.
- Faça login no GitHub e crie um novo repositório a partir deste template (Use this template > Create a new repository): Kinsta – Statamic Boilerplate.
- O Statamic é baseado no Laravel, portanto, a variável de ambiente
APP_KEY
deve ser definida. Você pode gerar uma chave de aplicativo localmente ou pode usar este gerador de chave Laravel on-line. - No MyKinsta, clique em Aplicativos > Adicionar aplicativo > selecione GitHub, clique em Conectar provedor git > Autorizar e faça login na sua conta do GitHub.
- Escolha o repositório Statamic Starter e um local de centro de dados. Em Variáveis de ambiente:
- Em Key 1, digite
APP_KEY
e, em Value 1, cole a chave gerada na Etapa 2. - Clique em Adicionar outro e, em Key 2, digite
APP_KINSTA
e, em Value 2, digitetrue
. - Selecione Disponível durante o tempo de execução e Disponível durante o processo de build.
- Em Key 1, digite
- Deixe todas as outras configurações como padrão e clique em Continuar em cada etapa. Na etapa Resumo, clique em Implantar mais tarde para adicionar os Buildpacks necessários antes da implantação.
- Para que o aplicativo possa criar os arquivos CSS/JS, você precisa adicionar dois buildpacks: Node.js e PHP. Clique em Configurações > Adicionar buildpack, selecione Node.js > Adicionar buildpack. Repita isso para o PHP.
- Clique em Implantações > Implantar agora > escolha a branch necessária > Implantar aplicativo.
O Statamic é baseado no Laravel; é um aplicativo regular baseado em PHP, portanto, durante a implantação, a Kinsta detecta automaticamente o Comando Start para o processo web e instala as dependências definidas no seu arquivo composer.json. O aplicativo estará disponível assim que a implantação for concluída, e a página de boas-vindas do Statamic será carregada na URL do seu aplicativo.
Você prefere assistir à versão em vídeo?
Variáveis de ambiente
O Statamic exige que você defina as seguintes variáveis de ambiente:
APP_KEY
– Você pode gerar uma chave do aplicativo localmente ou pode usar o gerador de chaves do Laravel on-line.APP_KINSTA
– definido comotrue
.
Buildpack
Na maioria dos casos, você desejará que o aplicativo crie os arquivos CSS/JS, portanto, será necessário adicionar esses dois buildpacks:
- Node.js
- PHP
O buildpack que contém a linguagem principal do seu aplicativo deve ser o último na lista de buildpacks. Neste exemplo, PHP é a linguagem principal e deve ser o último buildpack na lista.
Configuração do servidor web
Comando Start
O processo padrão da web é heroku-php-apache2 public/
. Se necessário, você pode alterar esse comando ao adicionar o aplicativo (Configurar seus processos) ou na página Processos do aplicativo após a implantação.
PHP para enviar e-mails
Este é um exemplo de como você pode configurar um aplicativo PHP para enviar e-mails via SendGrid nos serviços de hospedagem de aplicativos da Kinsta, implantado a partir de um repositório do GitHub.
A Kinsta não suporta nativamente e-mails de saída de servidores. Ao enviar e-mails por meio de provedores de saída especializados, como SendGrid ou Mailchimp, você tem mais flexibilidade e taxas de sucesso mais altas para e-mails transacionais e de campanha.
- Você pode fazer login no GitHub e criar um novo repositório a partir deste template (Use this template > Create a new repository): Kinsta – Hello World – Envio de e-mail com PHP.
- No MyKinsta, clique em Aplicativos > Adicionar aplicativo > selecione GitHub, clique em Conectar provedor git > Autorizar e faça login na sua conta do GitHub.
- Escolha o repositório Hello World Email PHP e um local de centro de dados. Em Variáveis de ambiente, adicione o seguinte:
SENDGRID_API_KEY
: A chave da API do SendGrid.TEST_EMAIL_TO_ADDRESS
: O endereço para o qual você deve enviar o e-mail de teste.TEST_EMAIL_FROM_ADDRESS
: O endereço de onde você deve enviar o e-mail de teste.TEST_ENDPOINT
: O endpoint a ser usado como um acionador para enviar o e-mail de teste. Use uma string aleatória de pelo menos 8 caracteres.
- Deixe todas as outras configurações como padrão e clique em Continuar em cada etapa. Na etapa Resumo, clique em Implantar agora.
O aplicativo estará disponível assim que a implantação for concluída, e uma página Hello World será carregada na URL do aplicativo.
Acionando um e-mail
Por meio de um entrypoint index.php muito simples, dois endpoints são expostos; todos os outros retornarão um erro 404:
/
: Uma página simples que retorna a mensagem Hello World/${TEST_ENDPOINT}
: Uma página que aciona um e-mail de teste.
Para acionar um e-mail, encontre a URL da sua implantação na página Implantações, anexe o endpoint de teste a essa URL e visite a página. Por exemplo, se o seu TEST_ENDPOINT
estiver definido como o34nifnodhni4of
e a implantação mais recente estiver em https://example.kinsta.app, você poderá acionar um e-mail de teste em https://example.kinsta.app/o34nifnodhni4of no seu navegador.