

 AWS Cloud9 não está mais disponível para novos clientes. Os clientes atuais do AWS Cloud9 podem continuar usando o serviço normalmente. [Saiba mais](https://aws.amazon.com/blogs/devops/how-to-migrate-from-aws-cloud9-to-aws-ide-toolkits-or-aws-cloudshell/)

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# WordPress tutorial para AWS Cloud9
<a name="sample-wordpress"></a>

Este tutorial permite que você instale e execute WordPress em um ambiente AWS Cloud9 de desenvolvimento. WordPress é um sistema de gerenciamento de conteúdo (CMS) de código aberto que é amplamente usado para a entrega de conteúdo da web. 

**nota**  
Seguir este tutorial e criar essa amostra pode resultar em cobranças em sua AWS conta. Isso inclui possíveis cobranças por serviços como o Amazon Elastic Compute Cloud (Amazon EC2). Para obter mais informações, consulte [Preço do Amazon EC2](https://aws.amazon.com/ec2/pricing/).

## Pré-requisitos
<a name="sample-wordpress-prereqs"></a>

Antes de usar esse exemplo, verifique se suas configurações cumprem os requisitos a seguir.
+ **Você deve ter um ambiente de desenvolvimento AWS Cloud9 EC2 existente.** Este exemplo pressupõe que você já tem um ambiente do EC2 conectado a uma instância do Amazon EC2 que executa Amazon Linux ou Ubuntu Server. Caso tenha um tipo diferente de ambiente ou sistema operacional, poderá ser necessário adaptar as instruções desse exemplo para configurar ferramentas relacionadas. Para obter mais informações, consulte [Criando um ambiente em AWS Cloud9](create-environment.md).
+ **Você tem o AWS Cloud9 IDE para o ambiente existente já aberto.** Quando você abre um ambiente, AWS Cloud9 abre o IDE desse ambiente em seu navegador da web. Para obter mais informações, consulte [Abrindo um ambiente em AWS Cloud9](open-environment.md).
+ **Você tem uma instância up-to-date EC2 com todos os pacotes de software mais recentes**. Na janela do terminal do AWS Cloud9 IDE, você pode executar `yum update` com a `-y` opção de instalar atualizações sem pedir confirmação. Para examinar as atualizações antes da instalação, você pode omitir essa opção. 

  ```
  sudo yum update -y
  ```

## Visão geral da instalação
<a name="task-overview"></a>

A instalação WordPress na instância EC2 do seu ambiente envolve as seguintes etapas:

1. Instalação e configuração do MariaDB Server, que é um banco de dados relacional de código aberto que armazena informações para instalações WordPress 

1. Instalação e configuração WordPress, o que inclui a edição do arquivo de `wordpress.conf` configuração

1. Configurando o servidor Apache que hospeda o site WordPress 

1. Visualizando o conteúdo WordPress da web hospedado pelo servidor Apache

## Etapa 1: instalar e configurar o MariaDB Server
<a name="wp-install-configure-mariadb"></a>

1. No AWS Cloud9 IDE, escolha **Janela**, **Novo Terminal** e insira os seguintes comandos para instalar e iniciar uma instalação do MariaDB Server:

   ```
   sudo yum install -y mariadb-server
   sudo systemctl start mariadb
   ```

1. Em seguida, execute o script `mysql_secure_installation` para melhorar a segurança da instalação do MariaDB Server. 

   Ao fornecer respostas ao script, pressione **Enter** para a primeira pergunta para manter a senha raiz em branco. Pressione**n** para `Set root password?` e **y** para cada uma das opções de segurança restantes.

   ```
   mysql_secure_installation
   ```

1. Agora, crie uma tabela de banco de dados para armazenar WordPress informações usando o cliente MariaDB.

   (Pressione **Enter** quando a senha for solicitada).

   ```
   sudo mysql -u root -p
   MariaDB [(none)]> create database wp_test;
   MariaDB [(none)]> grant all privileges on wp_test.* to root@localhost identified by ';'
   ```

1. Para encerrar a sessão do cliente MariaDB, execute o comando `exit`.

## Etapa 2: Instalando e configurando WordPress
<a name="wp-install-configure-wordpress"></a>

1. Na janela do terminal do IDE, navegue até o `environment` e, em seguida, crie os diretórios `config` e `wordpress`. Em seguida, execute o comando `touch` para criar um arquivo chamado `wordpress.conf` no diretório `config`:

   ```
   cd /home/ec2-user/environment
   mkdir config wordpress
   touch config/wordpress.conf
   ```

1. Use o editor IDE ou o vim para atualizar `wordpress.conf` com as informações de configuração do host que permitem que o servidor Apache forneça conteúdo: WordPress 

   ```
   # Ensure that Apache listens on port 80
   Listen 8080
   <VirtualHost *:8080>
       DocumentRoot "/var/www/wordpress"
       ServerName www.example.org
       # Other directives here
   </VirtualHost>
   ```

1. Agora, execute os seguintes comandos para recuperar o arquivo de arquivamento necessário e instalar WordPress: 

   ```
   cd /home/ec2-user/environment
   wget https://wordpress.org/latest.tar.gz
   tar xvf latest.tar.gz
   ```

1. Execute `touch` para criar um arquivo chamado `wp-config.php` no diretório `environment/wordpress`:

   ```
   touch wordpress/wp-config.php
   ```

1. Use o vim ou o editor IDE a fim de atualizar `wp-config.php` e substitua os dados da amostra pela sua configuração: 

   ```
   // ** MySQL settings - You can get this info from your web host ** //
   /** The name of the database for WordPress */
   define( 'DB_NAME', 'wp_test' );
   
   /** MySQL database username */
   define( 'DB_USER', 'wp_user' );
   
   /** MySQL database password */
   define( 'DB_PASSWORD', 'YourSecurePassword' );
   
   /** MySQL hostname */
   define( 'DB_HOST', 'localhost' );
   
   /** Database Charset to use in creating database tables. */
   define( 'DB_CHARSET', 'utf8' );
   
   /** The Database Collate type. Don't change this if in doubt. */
   define( 'DB_COLLATE', '' );
   
   define('FORCE_SSL', true);
   
   if ($_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https') $_SERVER['HTTPS'] = 'on';
   ```

## Etapa 3: Configurar o servidor Apache HTTP
<a name="wp-install-configure-apache"></a>

1. Na janela do terminal AWS Cloud9 IDE, verifique se você tem o Apache instalado: 

   ```
   httpd -v
   ```

   Para instalar o servidor Apache, execute o comando a seguir:

   ```
   sudo yum install -y httpd 
   ```

1. Navegue até o diretório `/etc/httpd/conf.d`, que é o local para os arquivos de configuração de host virtual do Apache. Em seguida, use o comando `ln` para vincular o diretório `wordpress.conf` que você criou anteriormente ao diretório de trabalho atual (`/etc/httpd/conf.d`):

   ```
   cd /etc/httpd/conf.d
   sudo ln -s /home/ec2-user/environment/config/wordpress.conf
   ```

1. Agora navegue até o diretório `/var/www`, que é a pasta raiz padrão para servidores Apache. E use o comando `ln` para vincular o diretório `wordpress` que você criou anteriormente para o diretório de trabalho atual (`/var/www`): 

   ```
   cd /var/www
   sudo ln -s /home/ec2-user/environment/wordpress
   ```

1. Execute o comando `chmod` para permitir que o servidor Apache execute conteúdo no subdiretório do `wordpress`:

   ```
   sudo chmod +x /home/ec2-user/
   ```

1. Agora reinicie o servidor Apache para permitir que ele detecte as novas configurações: 

   ```
   sudo service httpd restart
   ```

## Etapa 4: Pré-visualizar o conteúdo WordPress da web
<a name="wp-preview-wordpress"></a>

1. Usando o AWS Cloud9 IDE, crie um novo arquivo chamado `index.html` no seguinte diretório:`environment/wordpress`.

1. Adicione texto formatado em HTML ao `index.html`. Por exemplo:

   ```
   <h1>Hello World!</h1>
   ```

1. Na janela **Ambiente**, escolha o arquivo `index.html` e, a seguir, escolha **Visualizar** e **Visualizar a aplicação em execução**.

   A página da Web, que exibe a mensagem *Hello World\$1*, aparece na guia de visualização da aplicação. Para exibir o conteúdo da Web em seu navegador preferido, escolha **Pop Out Into a New Window** (Exibir em uma nova janela).

   Se você excluir o `index.html` arquivo e atualizar a guia de visualização do aplicativo, a página WordPress de configuração será exibida. 

## Gerenciar erros de conteúdo misto
<a name="wp-allow-mixed"></a>

Os navegadores da Web exibem erros mistos de conteúdo para um WordPress site se ele estiver carregando scripts ou conteúdo HTTPS e HTTP ao mesmo tempo. O texto das mensagens de erro depende do navegador da Web que você estiver usando, mas você será informado de que sua conexão com um site é insegura ou não é totalmente segura. E seu navegador da Web bloqueia o acesso ao conteúdo misto.

**Importante**  
Por padrão, todas as páginas da Web que você acessa na guia de visualização da aplicação do IDE do AWS Cloud9 usa o protocolo HTTPS automaticamente. Se o URI de uma página apresentar o protocolo `http` inseguro, ele será automaticamente substituído por `https`. Além disso, você não pode acessar o conteúdo inseguro revertendo manualmente o `https` para `http`.  
Para obter orientação sobre a implementação de HTTPS em seu site, consulte a [WordPressdocumentação](https://wordpress.org/support/article/https-for-wordpress/).