Instalação do Apache no Amazon Linux 2023 + Let’s Encrypt

Instalando o Apache

Atualizando os programas instalados

sudo dnf update -y

Instalando o Apache e módulos necessários.

sudo dnf install -y httpd mod_ssl

Caso seja necessário, o comando abaixo cria o arquivo que carrega o mod_ssl.so

sudo echo “LoadModule ssl_module modules/mod_ssl.so” > /etc/httpd/conf.modules.d/00-ssl.conf

Configurando o Apache a iniciar com o sistema operacional

sudo systemctl enable httpd

Verificando se realmente ele está executando

sudo systemctl is-enabled httpd

Nesse momento o Apache já está funcionando.
Acessando http://localhost ou http://seudominio.com  deve aparecer a mensagem “It works!”.

Estrutura de arquivos do Apache

Documento root: /var/www/html
Arquivos de configuração: /etc/httpd
Arquivo de configuração do Apache: /etc/httpd/conf/httpd.conf
Arquivo de configuração do virtualhost (seu site). Se ele não existir, você deve criá-lo:
/etc/httpd/conf.d/seusite.conf

Conteúdo inicial do arquivo seusite.conf:

<VirtualHost *:80>

</VirtualHost>

Atenção

Se você for utilizar o Let’s Encrypt, não adicione configurações de redirecionamento no arquivo acima. O Certbot, no processo de instalação do certificado pode causar erro, argumentando que ele poderia gerar loops de redirect. Isso acontece porque ele em seu processo cria a configuração de redirecionamento de HTTP para HTTPS.

Instalando o Certbot para geração de certificado digital

A Let’s Encrypt utiliza a ferramenta Certbot para automatizar a geração do certificado. Logo, precisamos instalar o Certbot no Amazon Linux. A instalação fica mais fácil utilizando o Pip, o gerenciador de pacote do Python.

Para instalar o Pip, o Certbot e gerar o certificado, basta seguir o passo a passo da documentação: https://certbot.eff.org/instructions?ws=apache&os=pip

Configurando o redirecionamento de www.dominio.com para dominio.com

Essa configuração está considerando que o seu domínio utiliza https://

Zona de DNS

Criar no zona de DNS um registro CNAME apontando o www.dominio.com para dominio.com. Exemplo no Route 53 da AWS: 

Módulo Rewrite do Apache

O rewrite_module já vem habilitado no arquivo /etc/httpd/conf.modules.d/00-base.conf .
Caso não esteja, você só precisa adicionar ao arquivo 00-base.conf, a linha abaixo:

LoadModule rewrite_module modules/mod_rewrite.so

Adicionar configuração no arquivo meudominio-le-ssl.conf, dentro da seção
<VirtualHost *:443>[..]</VirtualHost> :

<Directory /var/www/html>
    Options FollowSymLinks
    AllowOverride All
    Order Allow,Deny
    Allow from all
</Directory>

Criando o redirecionamento

Criando o arquivo .htaccess

sudo vim /var/www/html/.htaccess

Conteúdo do arquivo .htaccess

RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ https://%1/$1 [R=301,L]

Referências

Instalando drive PDO PHP do SQL Server no Linux

Instalando o PHP

sudo add-apt-repository ppa:ondrej/php -y
sudo apt-get update
sudo apt-get install php8.1 php8.1-dev php8.1-xml -y --allow-unauthenticated

Instalando os pré requisitos (Ubuntu 16.04 18.04 20.04 22.04)

sudo curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add -

sudo curl https://packages.microsoft.com/config/ubuntu/$(lsb_release -rs)/prod.list > /etc/apt/sources.list.d/mssql-release.list

Instalando o ODBC do SQL Server 17

sudo apt update
sudo ACCEPT_EULA=Y apt install -y msodbcsql17
sudo apt install unixodbc-dev

Opcional: Para usar ferramentas como BCP e SQLcmd

sudo ACCEPT_EULA=Y apt-get install -y mssql-tools
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc
source ~/.bashrc

Instalando o driver PDO do SQL Server no PHP

sudo pecl install sqlsrv
sudo pecl install pdo_sqlsrv

Setando a configuração do driver

sudo printf "; priority=20\nextension=sqlsrv.so\n" > /etc/php/8.1/mods-available/sqlsrv.ini

sudo printf "; priority=30\nextension=pdo_sqlsrv.so\n" > /etc/php/8.1/mods-available/pdo_sqlsrv.ini

Habilitando a configuração

sudo phpenmod -v 8.1 sqlsrv pdo_sqlsrv

Se estiver usando Apache, ele deve ser reiniciado

sudo service apache2 restart

Referências