Como instalo manualmente uma pilha LAMP em minha instância do Lightsail?
Quero instalar manualmente uma pilha Lamp (Linux, Apache, MySQL, PHP) em minha instância do Amazon Lightsail. Como posso fazer isso?
Resolução
Observação: as etapas de resolução abrangem a maioria das principais distribuições Linux disponíveis na opção OS Only (Somente SO) no Amazon Lightsail. Elas incluem Ubuntu 20.04, Ubuntu 18.04, Debian 10 e 9 e CentOS 8 e 7.
Para obter informações sobre como instalar uma pilha LAMP no Amazon Linux 2, consulte Tutorial: Install a LAMP web server on Amazon Linux 2.
Para obter informações sobre como instalar uma pilha LAMP no Amazon Linux, consulte Tutorial: Install a LAMP web server on the Amazon Linux AMI.
Instalar o Apache
Ubuntu 20.04 e 18.04, Debian 9 e 10
Execute os seguintes comandos para instalar o servidor Web Apache:
sudo apt update -y sudo apt install apache2 -y
CentOS 7 e CentOS 8
Execute os seguintes comandos para instalar o servidor Web Apache:
sudo yum update -y sudo yum install httpd wget -y sudo systemctl enable httpd sudo systemctl start httpd
Instalar o PHP
Observação: as etapas a seguir instalam o PHP 8.0, que é a versão mais recente do pacote PHP suportada. O PHP 8.0 não está presente por padrão na maioria das distribuições. Você instala o PHP 8.0 habilitando repositórios de terceiros.
Ubuntu 20.04 e Ubuntu 18.04
Execute os seguintes comandos para instalar o PHP:
sudo apt-get install software-properties-common sudo add-apt-repository ppa:ondrej/php sudo apt-get update -y sudo apt install php8.0 php8.0-{fpm,mysql,curl,gd,mbstring,mysql,xml,mcrypt,zip,ldap} libapache2-mod-php8.0 -y
Debian 10 e Debian 9
Execute os seguintes comandos para instalar o PHP:
sudo apt install -y gnupg2 ca-certificates apt-transport-https software-properties-common wget -qO - https://packages.sury.org/php/apt.gpg | sudo apt-key add - echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/sury-php.list sudo apt update sudo apt install php8.0 php8.0-{fpm,mysql,curl,gd,mbstring,mysql,xml,mcrypt,zip,ldap} libapache2-mod-php8.0 -y
CentOS 7
Execute os seguintes comandos para instalar o PHP:
sudo yum install -y https://rpms.remirepo.net/enterprise/remi-release-7.rpm sudo yum install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm sudo yum install -y yum-utils sudo yum-config-manager --enable remi-php80 sudo yum install php php-{fpm,mysql,curl,gd,mbstring,mysql,xml,mcrypt,zip,ldap} -y
CentOS 8
Execute os seguintes comandos para instalar o PHP:
sudo dnf install -y https://rpms.remirepo.net/enterprise/remi-release-8.rpm sudo dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm sudo dnf module enable php:remi-8.0 -y sudo yum install php php-{fpm,mysql,curl,gd,mbstring,mysql,xml,mcrypt,zip,ldap} -y
Habilitar o módulo PHP-FPM
O módulo PHP-FPM fornece um site muito mais rápido. Embora a instalação do PHP-FPM seja opcional, é uma prática recomendada usá-lo com a maioria dos sites de criação e gerenciamento de sites.
Ubuntu 20.04 e 18.04, Debian 10 e 9
Execute os seguintes comandos para instalar o PHP-FPM:
sudo a2enmod proxy_fcgi setenvif sudo a2enconf php8.0-fpm sudo a2dismod php8.0 sudo systemctl enable php8.0-fpm sudo service apache2 restart;sudo service php8.0-fpm restart
CentOS 7
1. Atualize a configuração do Apache para usar o mpm_event_module em vez do mpm_prefork_module:
[centos@ip ~]# sudo vi /etc/httpd/conf.modules.d/00-mpm.conf # LoadModule mpm_prefork_module modules/mod_mpm_prefork.so LoadModule mpm_event_module modules/mod_mpm_event.so
2. Faça backup do arquivo de configuração PHP atual no Apache e crie um novo com o seguinte conteúdo:
sudo mv /etc/httpd/conf.d/php.conf /etc/httpd/conf.d/php.conf_bak sudo vi /etc/httpd/conf.d/php.conf <Files ".user.ini"> <IfModule mod_authz_core.c> Require all denied </IfModule> <IfModule !mod_authz_core.c> Order allow,deny Deny from all Satisfy All </IfModule> </Files> <FilesMatch \.php$> SetHandler "proxy:fcgi://127.0.0.1:9000" </FilesMatch> AddType text/html .php DirectoryIndex index.php
3. Reinicie o Apache e o PHP-FPM para que as alterações entrem em vigor:
sudo systemctl restart php-fpm sudo systemctl restart httpd
CentOS 8
1. Atualize o arquivo de configuração PHP-FPM para que o serviço escute a porta, em vez do soquete.
sudo sed 's#listen = /run/php-fpm/www.sock#listen = 127.0.0.1:9000#g' -i /etc/php-fpm.d/www.conf
2. Faça backup do arquivo de configuração PHP atual no Apache e crie um novo com o seguinte conteúdo:
sudo mv /etc/httpd/conf.d/php.conf /etc/httpd/conf.d/php.conf_bak sudo vi /etc/httpd/conf.d/php.conf <Files ".user.ini"> <IfModule mod_authz_core.c> Require all denied </IfModule> <IfModule !mod_authz_core.c> Order allow,deny Deny from all Satisfy All </IfModule> </Files> <FilesMatch \.php$> SetHandler "proxy:fcgi://127.0.0.1:9000" </FilesMatch> AddType text/html .php DirectoryIndex index.php
3. Execute o seguinte comando no servidor para permitir que o Apache faça conexões de saída:
sudo /usr/sbin/setsebool -P httpd_can_network_connect 1
4. Reinicie o Apache e o PHP-FPM para que as alterações entrem em vigor:
sudo systemctl restart php-fpm sudo systemctl restart httpd
Instale o MariaDB
Instale o MariaDB versão 10.5 usando o repositório do MariaDB diretamente.
1. Execute o seguinte comando para adicionar o repositório yum do MariaDB (para todas as distribuições Linux):
curl -LsS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | sudo bash -s -- --mariadb-server-version="mariadb-10.5"
2. Instale o pacote MariaDB:
Ubuntu 20.04, Ubuntu 18.04, Debian 10 e Debian 9
sudo apt install mariadb-server -y
CentOS 8 e CentOS 7
sudo yum install MariaDB-server MariaDB-client -y sudo systemctl start mariadb.service sudo systemctl enable mariadb.service
3. Execute o seguinte comando para concluir a instalação segura do MariaDB para definir a senha raiz:
sudo mysql_secure_installation
4. Quando solicitado, defina uma senha para a conta raiz:
Digite a senha raiz atual. Por padrão, a conta raiz não tem uma senha definida.
Pressione Enter.
Pressione N para alternar para autenticação unix_socket.
Pressione Y (S) para definir uma senha e, em seguida, insira uma senha segura duas vezes. Certifique-se de guardar essa senha em um local seguro.
Pressione Y (S) para remover as contas de usuário anônimas.
Pressione Y (S) para desabilitar o login raiz remoto.
Pressione Y (S) para remover o banco de dados de teste.
Pressione Y (S) para recarregar as tabelas de privilégios e salvar as alterações.
Adicione permissões para as pastas do seu site ao usuário padrão
Para transferir a instância do seu site usando SCP/SFTP, é uma prática recomendada que o usuário correspondente tenha permissões para acessar o diretório /var/www. As etapas a seguir fornecem as permissões apropriadas para o usuário padrão em cada distribuição Linux. Você pode adicionar o usuário ao grupo Apache e, em seguida, alterar a propriedade desse diretório para o usuário padrão e o grupo Apache.
Ubuntu 20.04 e 18.04
1. Execute o seguinte comando:
sudo usermod -a -G www-data ubuntu
2. Faça logoff e, em seguida, faça logon novamente para selecionar o novo grupo. Em seguida, verifique sua associação executando “group” (grupo):
sudo chown -R ubuntu:www-data /var/www sudo chmod 2775 /var/www find /var/www -type d -exec sudo chmod 2775 {} \; find /var/www -type f -exec sudo chmod 0664 {} \;
Debian 10 e 9
1. Execute o seguinte comando:
sudo usermod -a -G www-data admin
2. Faça logoff e, em seguida, faça logon novamente para selecionar o novo grupo. Em seguida, verifique sua associação executando “group” (grupo).
sudo chown -R admin:www-data /var/www sudo chmod 2775 /var/www find /var/www -type d -exec sudo chmod 2775 {} \; find /var/www -type f -exec sudo chmod 0664 {} \;
CentOS 8 e 7
1. Execute o seguinte comando:
sudo usermod -a -G apache centos
2. Faça logoff e, em seguida, faça logon novamente para selecionar o novo grupo. Verifique sua associação executando “group” (grupo):
sudo chown -R centos:apache /var/www sudo chmod 2775 /var/www find /var/www -type d -exec sudo chmod 2775 {} \; find /var/www -type f -exec sudo chmod 0664 {} \;
Seu site está pronto
Acesse o endereço IP público da instância em um navegador da Web para ver a página da Web padrão. Seu site agora está pronto para personalização.
Conteúdo relevante
- AWS OFICIALAtualizada há 2 anos
- AWS OFICIALAtualizada há um ano
- AWS OFICIALAtualizada há 3 anos