E-commerce · 22 min read · Oct 14, 2025

Como Instalar PrestaShop no Rocky Linux 9

PrestaShop é uma aplicação web de e-commerce de código aberto escrita usando o framework Symfony PHP. Permite que você projete, construa e hospede uma loja online para vender produtos, receber pagamentos e gerenciar todos os aspectos relacionados. Está sendo usado por mais de 300.000 sites, tornando-se uma das plataformas de e-commerce mais populares. Suporta módulos que permitem estender ainda mais sua funcionalidade. Você pode personalizá-lo usando vários temas de alta qualidade. Oferece templates personalizáveis, gateways de pagamento seguros, gerenciamento de inventário e ferramentas amigáveis para SEO para otimizar as classificações nos motores de busca.

Neste tutorial, você aprenderá como instalar o Prestashop em um servidor Rocky Linux 9.

Pré-requisitos

  • Um servidor rodando Rocky Linux 9 com um mínimo de 1 GB de RAM.
  • Um usuário não-root com privilégios sudo.
  • Um Nome de Domínio Totalmente Qualificado (FQDN) como prestashop.example.com apontando para seu servidor.
  • Uma conta SMTP com um serviço de e-mail como Amazon SES ou Mailgun.
  • Tudo atualizado. $ sudo dnf update
  • Alguns pacotes essenciais são necessários para o tutorial e para o Prestashop funcionar. Alguns desses já estarão no seu servidor. $ sudo dnf install wget curl nano unzip yum-utils policycoreutils-python-utils -y

Passo 1 - Configurar o Firewall

O primeiro passo é configurar o firewall. O Rocky Linux usa o Firewalld Firewall. Verifique o status do firewall.

$ sudo firewall-cmd --state
running

O firewall funciona com diferentes zonas, e a zona pública é a padrão que usaremos. Liste todos os serviços e portas ativos no firewall.

$ sudo firewall-cmd --permanent --list-services

Deve mostrar a seguinte saída.

cockpit dhcpv6-client ssh

Permita as portas HTTP e HTTPS.

$ sudo firewall-cmd --permanent --add-service=http
$ sudo firewall-cmd --permanent --add-service=https

Verifique novamente o status do firewall.

$ sudo firewall-cmd --permanent --list-services

Você deve ver uma saída semelhante.

cockpit dhcpv6-client http https ssh

Recarregue o firewall para habilitar as mudanças.

$ sudo firewall-cmd --reload

Passo 2 - Instalar Nginx

O Rocky Linux 9 vem com uma versão mais antiga do Nginx. Para instalar a versão mais recente, você precisa baixar o repositório oficial do Nginx.

Crie e abra o arquivo /etc/yum.repos.d/nginx.repo para edição.

$ sudo nano /etc/yum.repos.d/nginx.repo

Cole o seguinte código nele.

[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true

[nginx-mainline]
name=nginx mainline repo
baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/
gpgcheck=1
enabled=0
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true

Uma vez que você terminar, salve o arquivo pressionando Ctrl + X e digitando Y quando solicitado.

Instale o Nginx.

$ sudo dnf install nginx -y

Verifique a instalação.

$ nginx -v
nginx version: nginx/1.24.0

Habilite e inicie o serviço do servidor Nginx.

$ sudo systemctl enable nginx --now

Verifique o status do serviço.

$ sudo systemctl status nginx
? nginx.service - nginx - high performance web server
     Loaded: loaded (/usr/lib/systemd/system/nginx.service; enabled; preset: disabled)
     Active: active (running) since Sat 2023-11-25 10:58:03 UTC; 5s ago
       Docs: http://nginx.org/en/docs/
    Process: 4220 ExecStart=/usr/sbin/nginx -c /etc/nginx/nginx.conf (code=exited, status=0/SUCCESS)
   Main PID: 4222 (nginx)
      Tasks: 2 (limit: 10841)
     Memory: 1.9M
        CPU: 9ms
     CGroup: /system.slice/nginx.service
             ??4222 "nginx: master process /usr/sbin/nginx -c /etc/nginx/nginx.conf"
             ??4223 "nginx: worker process"

Abra o endereço IP do seu servidor no seu navegador. Você deve ver a seguinte página, o que significa que seu servidor está ativo e funcionando.

Página Padrão do Nginx

Passo 3 - Instalar PHP e extensões

O Rocky Linux 9 vem com PHP 8.1 por padrão. Para sempre ficar na versão mais recente do PHP ou se você quiser instalar várias versões do PHP, precisamos usar o repositório REMI.

O primeiro passo é pegar o repositório Epel.

$ sudo dnf install epel-release -y

Em seguida, instale o repositório Remi.

$ sudo dnf install https://rpms.remirepo.net/enterprise/remi-release-9.rpm

Verifique os streams de PHP disponíveis.

$ dnf module list php -y
Name    Stream              Profiles                                      Summary
php     8.1                 common [d], devel, minimal                    PHP scripting language

Remi's Modular repository for Enterprise Linux 9 - x86_64
Name    Stream              Profiles                                      Summary
php     remi-7.4            common [d], devel, minimal                    PHP scripting language
php     remi-8.0            common [d], devel, minimal                    PHP scripting language
php     remi-8.1            common [d], devel, minimal                    PHP scripting language
php     remi-8.2            common [d], devel, minimal                    PHP scripting language
php     remi-8.3            common [d], devel, minimal                    PHP scripting language

Hint: [d]efault, [e]nabled, [x]disabled, [i]nstalled

A versão padrão é 8.1. No momento da redação deste tutorial, o Prestashop é compatível com PHP 8.1. Portanto, habilite o repositório PHP 8.1 do Remi.

$ sudo dnf module reset php -y
$ sudo dnf module enable php:remi-8.1

Instale o PHP e suas extensões necessárias para o Prestashop.

$ sudo dnf install php php-bcmath php-cli php-curl php-common \
    php-fpm php-gd php-gmp php-intl php-mbstring \
    php-mysql php-opcache php-xml php-zip -y

Verifique a versão do PHP instalada.

$ php --version
PHP 8.1.26 (cli) (built: Nov 21 2023 21:53:48) (NTS gcc x86_64)
Copyright (c) The PHP Group
Zend Engine v4.1.26, Copyright (c) Zend Technologies
    with Zend OPcache v8.1.26, Copyright (c), by Zend Technologies

Habilite e inicie o serviço PHP-FPM.

$ sudo systemctl enable php-fpm --now

Verifique o status do serviço.

$ sudo systemctl status php-fpm
? php-fpm.service - The PHP FastCGI Process Manager
     Loaded: loaded (/usr/lib/systemd/system/php-fpm.service; enabled; preset: disabled)
     Active: active (running) since Sat 2023-11-25 12:54:31 UTC; 2s ago
   Main PID: 6160 (php-fpm)
     Status: "Ready to handle connections"
      Tasks: 6 (limit: 10841)
     Memory: 15.2M
        CPU: 56ms
     CGroup: /system.slice/php-fpm.service
             ??6160 "php-fpm: master process (/etc/php-fpm.conf)"
             ??6161 "php-fpm: pool www"
             ??6162 "php-fpm: pool www"
             ??6163 "php-fpm: pool www"
             ??6164 "php-fpm: pool www"
             ??6165 "php-fpm: pool www"

Passo 4 - Instalar Percona MySQL Server

O Prestashop requer um servidor de banco de dados MySQL para armazenamento de dados. Mas em vez de instalar o MySQL, instalaremos o servidor Percona MySQL. Ele funciona como um substituto direto para o MySQL e oferece mais recursos e segurança.

O primeiro passo é instalar o repositório de lançamento do Percona para Rocky Linux.

$ sudo dnf install -y https://repo.percona.com/yum/percona-release-latest.noarch.rpm

Se você receber o seguinte erro, pode ignorá-lo com segurança e prosseguir, pois não afeta a instalação. A chave GPG ainda será importada mais tarde.

error: can't create transaction lock on /var/lib/rpm/.rpm.lock (Resource temporarily unavailable)
error: /etc/pki/rpm-gpg/RPM-GPG-KEY-Percona: key 1 import failed.

Uma vez que o repositório esteja instalado, configure o repositório do Percona Server para MySQL 8.0 emitindo o seguinte comando.

$ percona-release setup ps80

O comando acima pergunta se você deseja desabilitar o módulo MySQL padrão. Digite y para prosseguir. Isso desabilitará o módulo instalador do MySQL e habilitará o módulo do MySQL Percona.

Instale o Percona Server para MySQL 8.0.

$ sudo dnf -y install percona-server-server

Isso instalará o Percona Server e Client para MySQL, que são os pacotes básicos que você precisa por enquanto.

Verifique a instalação.

$ mysql --version
mysql  Ver 8.0.34-26 for Linux on x86_64 (Percona Server (GPL), Release 26, Revision 0fe62c85)

Inicie o serviço MySQL.

$ sudo systemctl start mysqld

Verifique o status do serviço MySQL.

$ sudo systemctl status mysqld
? mysqld.service - MySQL Server
     Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; preset: disabled)
     Active: active (running) since Sun 2023-11-26 06:25:37 UTC; 7s ago
       Docs: man:mysqld(8)
             http://dev.mysql.com/doc/refman/en/using-systemd.html
    Process: 6522 ExecStartPre=/usr/bin/mysqld_pre_systemd (code=exited, status=0/SUCCESS)
   Main PID: 6598 (mysqld)
     Status: "Server is operational"
      Tasks: 39 (limit: 10841)
     Memory: 486.8M
        CPU: 8.131s
     CGroup: /system.slice/mysqld.service
             ??6598 /usr/sbin/mysqld

Nov 26 06:25:28 prestashop.example.com systemd[1]: Starting MySQL Server...
Nov 26 06:25:37 prestashop.example.com systemd[1]: Started MySQL Server.

O Percona gera uma senha temporária para o root durante a instalação. Pegue essa senha usando o seguinte comando.

$ sudo grep "temporary password" /var/log/mysqld.log
2023-11-26T06:25:33.316696Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: (sDeLSgjs7pI

Faça login no shell do MySQL.

$ sudo mysql -u root -p

Execute o assistente de configuração de segurança do MySQL.

$ sudo mysql_secure_installation

Digite a senha root quando solicitado.

Securing the MySQL server deployment.

Enter password for user root:

A senha sendo temporária já expirou e você será solicitado a definir uma nova senha root. Escolha uma senha forte para a conta root. Sua senha deve satisfazer os requisitos atuais de política de senha, o que significa que deve ter um caractere minúsculo, um caractere maiúsculo, um número e um caractere especial.

The existing password for the user account root has expired. Please set a new password.

New password:

Re-enter new password:

Em seguida, a força da senha será mostrada e você será perguntado se deseja alterá-la. Digite N para prosseguir.

The 'validate_password' component is installed on the server.
The subsequent steps will run with the existing configuration
of the component.
Using existing password for root.

Estimated strength of the password: 100
Change the password for root ? ((Press y|Y for Yes, any other key for No) : N

 ... skipping.

Digite Y para remover usuários anônimos.

By default, a MySQL installation has an anonymous user,
allowing anyone to log into MySQL without having to have
a user account created for them. This is intended only for
testing, and to make the installation go a bit smoother.
You should remove them before moving into a production
environment.

Remove anonymous users? (Press y|Y for Yes, any other key for No) : Y
Success.

Digite Y para desabilitar o login remoto do root.

Normally, root should only be allowed to connect from
'localhost'. This ensures that someone cannot guess at
the root password from the network.

Disallow root login remotely? (Press y|Y for Yes, any other key for No) : Y
Success.

Digite Y para remover o banco de dados de teste.

By default, MySQL comes with a database named 'test' that
anyone can access. This is also intended only for testing,
and should be removed before moving into a production
environment.

Remove test database and access to it? (Press y|Y for Yes, any other key for No) : Y
 - Dropping test database...
Success.

 - Removing privileges on test database...
Success.

E finalmente, digite N para recarregar as tabelas de privilégios.

Reloading the privilege tables will ensure that all changes
made so far will take effect immediately.

Reload privilege tables now? (Press y|Y for Yes, any other key for No) : Y
Success.

All done!

É isso. Na próxima vez que você quiser fazer login no shell do MySQL, use o seguinte comando e digite a senha root quando solicitado.

$ sudo mysql -u root -p

Você receberá o seguinte prompt do shell do MySQL.

Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 16
Server version: 8.0.34-26 Percona Server (GPL), Release 26, Revision 0fe62c85

Copyright (c) 2009-2023 Percona LLC and/or its affiliates
Copyright (c) 2000, 2023, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

Digite exit para sair do shell.

Passo 5 - Configurar o Percona MySQL Server

Faça login no shell do MySQL.

$ sudo mysql -u root -p

Crie um novo banco de dados MySQL, um usuário de banco de dados e uma senha para sua instalação do Prestashop.

mysql> CREATE DATABASE prestashop COLLATE utf8mb4_general_ci;
mysql> CREATE USER 'prestauser'@'localhost' IDENTIFIED BY 'Your_password2';
mysql> GRANT ALL PRIVILEGES ON prestashop.* TO 'prestauser'@'localhost';

Substitua prestashop, prestauser e yourpassword pelas credenciais de sua escolha. Escolha uma senha forte e certifique-se de que siga a política de senha conforme descrito acima.

Recarregue os privilégios para garantir que eles sejam salvos na sessão atual.

mysql> FLUSH PRIVILEGES;

Saia do shell do MySQL.

mysql> exit

Passo 6 - Baixando o Prestashop

Crie um diretório para o Prestashop.

$ sudo mkdir /var/www/html/prestashop -p

Existem duas versões do Prestashop disponíveis - a versão básica com marca e a versão sem marca. A versão com marca está disponível no site do Prestashop, enquanto a versão sem marca está disponível no repositório do GitHub. A diferença entre as duas versões é que a versão com marca contém módulos extras, incluindo um processador de pagamento, módulos do Facebook e Google para promoção e SEO, e vários outros módulos para conectar-se ao Prestashop e fins analíticos.

A versão básica é lançada após a versão sem marca. Portanto, no momento da redação deste tutorial, a versão mais recente da edição básica disponível é 8.1.1 e a versão sem marca é 8.1.2. Para nosso tutorial, usaremos a edição básica com marca. Você pode usar a versão sem marca se quiser. O processo de instalação para ambas as versões é exatamente o mesmo.

Baixe a versão mais recente usando o seguinte comando.

$ cd /tmp
$ wget https://assets.prestashop3.com/dst/edition/corporate/8.1.1/prestashop_edition_basic_version_8.1.1.zip

Você pode obter o link visitando a página de download do Prestashop, inserindo seu e-mail e baixando o arquivo. A versão sem marca pode ser obtida na página de lançamentos do GitHub do Prestashop.

Descompacte o arquivo baixado.

$ unzip prestashop_*.zip

Este arquivo contém outro arquivo zip chamado prestashop.zip, que contém todos os arquivos. Extraia os arquivos para o diretório do Prestashop.

$ sudo unzip prestashop.zip -d /var/www/html/prestashop

Altere o proprietário do diretório do Prestashop para o usuário nginx.

$ sudo chown -R nginx: /var/www/html/prestashop

Passo 7 - Instalar SSL

Precisamos instalar o Certbot para gerar o certificado SSL. Usaremos o instalador de pacotes Snapd para isso. Como o Rocky Linux não vem com ele, instale o instalador Snapd. Ele requer o repositório EPEL (Extra Packages for Enterprise Linux) para funcionar. Mas como já o instalamos no passo 3, podemos seguir em frente.

Instale o Snapd.

$ sudo dnf install -y snapd

Habilite e inicie o serviço Snap.

$ sudo systemctl enable snapd --now

Instale o pacote core do Snap e certifique-se de que sua versão do Snapd esteja atualizada.

$ sudo snap install core && sudo snap refresh core

Crie os links necessários para o Snapd funcionar.

$ sudo ln -s /var/lib/snapd/snap /snap
$ echo 'export PATH=$PATH:/var/lib/snapd/snap/bin' | sudo tee -a /etc/profile.d/snapd.sh

Instale o Certbot.

$ sudo snap install --classic certbot

Use o seguinte comando para garantir que o comando Certbot possa ser executado criando um link simbólico para o diretório /usr/bin.

$ sudo ln -s /snap/bin/certbot /usr/bin/certbot

Verifique se o Certbot está funcionando corretamente.

$ certbot --version
certbot 2.7.4

Execute o seguinte comando para gerar um Certificado SSL.

$ sudo certbot certonly --nginx --agree-tos --no-eff-email --staple-ocsp --preferred-challenges http -m [email protected] -d prestashop.example.com

O comando acima fará o download de um certificado para o diretório /etc/letsencrypt/live/prestashop.example.com em seu servidor.

Gere um certificado de grupo Diffie-Hellman.

$ sudo openssl dhparam -dsaparam -out /etc/ssl/certs/dhparam.pem 4096

Verifique o serviço do agendador de renovação do Certbot.

$ sudo systemctl list-timers

Você encontrará snap.certbot.renew.service como um dos serviços agendados para execução.

NEXT                        LEFT           LAST                        PASSED      UNIT                      ACTIVATES     
---------------------------------------------------------------------------------------------------------------------------               
Sun 2023-11-26 17:12:40 UTC 1h 34min left Sun 2023-11-26 15:25:36 UTC 12min ago    dnf-makecache.timer       dnf-makecache.service
Sun 2023-11-26 17:48:00 UTC 2h 10min left -                           -            snap.certbot.renew.timer  snap.certbot.renew.service
Mon 2023-11-27 00:00:00 UTC 8h left       Sun 2023-11-26 00:00:00 UTC 15h ago      logrotate.timer           logrotate.service

Faça um teste do processo para verificar se a renovação do SSL está funcionando bem.

$ sudo certbot renew --dry-run

Se você não ver erros, está tudo pronto. Seu certificado será renovado automaticamente.

Passo 8 - Configurar SELinux

Altere o contexto de segurança do arquivo para o Prestashop.

$ sudo semanage fcontext -a -t httpd_sys_rw_content_t "/var/www/html/prestashop(/.*)?"

Aplique a política.

$ sudo restorecon -Rv /var/www/html/prestashop/

Aplique a política para permitir que o Nginx tenha acesso ao MariaDB.

$ sudo setsebool -P httpd_can_network_connect_db 1

Aplique a política para permitir que conexões sejam feitas para hosts externos. Isso é necessário para enviar e-mails.

$ sudo setsebool -P httpd_can_network_connect 1

Com o MariaDB 10.11, você enfrentará outro problema, que é que o SELinux impede que o PHP-FPM se conecte ao MariaDB. Isso pode ser resolvido instalando um módulo SELinux. O primeiro passo é criar um arquivo de type enforcement.

Crie o arquivo my-phpfpm.te no seu diretório home e abra-o para edição.

$ cd ~
$ nano my-phpfpm.te

Cole o seguinte código nele.

module my-phpfpm 1.0;

require {
        type unconfined_service_t;
        type httpd_t;
        type httpd_sys_content_t;
        class dir write;
        class unix_stream_socket connectto;
}

#============= httpd_t ============== 

#!!!! This avc is allowed in the current policy
allow httpd_t httpd_sys_content_t:dir write;

#!!!! This avc is allowed in the current policy
allow httpd_t unconfined_service_t:unix_stream_socket connectto;

Salve o arquivo pressionando Ctrl + X e digitando Y quando solicitado.

O próximo passo é convertê-lo em um módulo de política usando o seguinte comando. Não modifique o nome do arquivo no comando, caso contrário, não funcionará. O módulo é chamado my-phpfpm e o nome do arquivo deve ser o mesmo que o nome do módulo.

$ sudo checkmodule -M -m -o my-phpfpm.mod my-phpfpm.te

Em seguida, precisamos compilar o módulo de política para criar um pacote de política.

$ sudo semodule_package -o my-phpfpm.pp -m my-phpfpm.mod

O passo final é carregar o pacote de política usando o comando semodule, que instala a política a ser usada.

$ sudo semodule -i my-phpfpm.pp

Passo 9 - Configurar PHP-FPM

Abra php.ini para edição.

$ sudo nano /etc/php.ini

Para definir os tamanhos de upload de arquivos, altere os valores das variáveis upload_max_filesize e post_max_size. Este valor decide o tamanho do arquivo que você pode enviar para o Prestashop. Por padrão, está definido em 10MB, que é o que configuraremos com o PHP.

$ sudo sed -i 's/upload_max_filesize = 2M/upload_max_filesize = 16M/' /etc/php.ini
$ sudo sed -i 's/post_max_size = 8M/post_max_size = 16M/' /etc/php.ini

Configure o limite de memória do PHP dependendo dos recursos e requisitos do seu servidor.

$ sudo sed -i 's/memory_limit = 128M/memory_limit = 256M/' /etc/php.ini

Abra o arquivo /etc/php-fpm.d/www.conf.

$ sudo nano /etc/php-fpm.d/www.conf

Precisamos definir o usuário/grupo Unix dos processos PHP para nginx. Encontre as linhas user=apache e group=apache no arquivo e altere-as para nginx.

...
; Unix user/group of processes
; Note: The user is mandatory. If the group is not set, the default user's group
;       will be used.
; RPM: apache user chosen to provide access to the same directories as httpd
user = nginx
; RPM: Keep a group allowed to write in log dir.
group = nginx
...

Encontre as linhas listen.owner = nobody, listen.group = nobody, listen.mode = 0660 no arquivo e altere-as da seguinte forma, após descomentá-las.

; Set permissions for unix socket, if one is used. In Linux, read/write
; permissions must be set in order to allow connections from a web server. Many
; BSD-derived systems allow connections regardless of permissions. The owner
; and group can be specified either by name or by their numeric IDs.
; Default Values: user and group are set as the running user
;                 mode is set to 0660
listen.owner = nginx
listen.group = nginx
listen.mode = 0660

Salve o arquivo pressionando Ctrl + X e digitando Y quando solicitado.

Reinicie o processo PHP-fpm. Certifique-se de que você tenha o Nginx instalado antes de reiniciar o serviço PHP, caso contrário, ele falhará, pois não conseguirá encontrar o grupo nginx.

$ sudo systemctl restart php-fpm

Altere o grupo do diretório de sessões PHP para Nginx.

$ sudo chgrp -R nginx /var/lib/php/session

Passo 10 - Configurar Nginx

Abra o arquivo /etc/nginx/nginx.conf para edição.

$ sudo nano /etc/nginx/nginx.conf

Adicione a seguinte linha antes da linha include /etc/nginx/conf.d/*.conf;.

server_names_hash_bucket_size 64;

Salve o arquivo pressionando Ctrl + X e digitando Y quando solicitado.

Crie e abra o arquivo /etc/nginx/conf.d/prestashop.conf para edição.

$ sudo nano /etc/nginx/conf.d/prestashop.conf

Cole o seguinte código nele. Substitua prestashop.example.com pelo seu nome de domínio. Certifique-se de que o valor de client_max_body_size esteja definido como 10MB, que é o mesmo valor que configuramos com o PHP anteriormente.

server {
    listen 443 ssl http2;
    listen [::]:443 ssl http2;

    # [EDIT] Seu(s) nome(s) de domínio vão aqui.
    server_name prestashop.example.com;

    # [EDIT] Caminho para os logs do Nginx do seu domínio.
    access_log /var/log/nginx/prestashop.access.log;
    error_log /var/log/nginx/prestashop.error.log;

    # [EDIT] Caminho para seus certificados SSL (dê uma olhada no Certbot https://certbot.eff.org).
    ssl_certificate      /etc/letsencrypt/live/prestashop.example.com/fullchain.pem;
    ssl_certificate_key  /etc/letsencrypt/live/prestashop.example.com/privkey.pem;
    ssl_trusted_certificate /etc/letsencrypt/live/prestashop.example.com/chain.pem;

    ssl_session_timeout  5m;
    ssl_session_cache shared:MozSSL:10m;
    ssl_session_tickets off;

    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_prefer_server_ciphers on;
    ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384;
    ssl_ecdh_curve X25519:prime256v1:secp384r1:secp521r1;
    ssl_stapling on;
    ssl_stapling_verify on;
    ssl_dhparam /etc/ssl/certs/dhparam.pem;

    # [EDIT] Caminho para o diretório do seu PrestaShop.
    root /var/www/html/prestashop;

    index index.php;

    # Isso deve corresponder às configurações `post_max_size` e/ou `upload_max_filesize`
    # em seu php.ini.
    client_max_body_size 16M;

    # Redirecionar erros 404 para o PrestaShop.
    error_page 404 /index.php?controller=404;

    # HSTS (Forçar clientes a interagir com seu site usando apenas HTTPS).
    # Para maior segurança, registre seu site aqui: https://hstspreload.org/.
    # AVISO: Não use isso se seu site não estiver totalmente em HTTPS!
    # add_header Strict-Transport-Security "max-age=63072000; includeSubDomains" preload; always;

    # [EDIT] Se você estiver usando vários idiomas.
    # rewrite ^/fr$ /fr/ redirect;
    # rewrite ^/fr/(.*) /$1;

    # Imagens.
    rewrite ^/(
    # ... (continua com as regras de reescrita)

    # habilitar cache do navegador
    location ~* \\.(?:css|eot|gif|ico|jpe?g|otf|png|ttf|woff2?)$ {
        expires 1M;
        add_header Cache-Control "public";
    }

    location ~ [^/]
    # ... (continua com as regras de localização)

    # habilitar compressão gzip
    gzip on;
    gzip_disable "msie6";

    gzip_vary on;
    gzip_proxied any;
    gzip_comp_level 6;
    gzip_min_length 1000;
    gzip_types
        application/atom+xml
        application/geo+json
        application/javascript
        application/json
        application/ld+json
        application/manifest+json
        application/rdf+xml
        application/rss+xml
        application/x-javascript
        application/xhtml+xml
        application/xml
        font/eot
        font/otf
        font/ttf
        image/svg+xml
        text/css
        text/javascript
        text/plain
        text/xml;
}

# forçar HTTPS
server {
    listen 80;
    listen [::]:80;
    server_name  prestashop.example.com;
    return 301   https://$host$request_uri;
}

Salve o arquivo pressionando Ctrl + X e digitando Y quando solicitado.

Verifique sua configuração do Nginx.

$ sudo nginx -t

Reinicie o servidor Nginx.

$ sudo systemctl restart nginx

Passo 11 - Instalar Prestashop

Visite a URL https://prestashop.example.com em seu navegador e você verá a seguinte tela do instalador.

Página do Instalador do Prestashop

Clique em Próximo para prosseguir para a próxima página.

Página do Acordo de Licença do Prestashop

Você verá a Licença do Prestashop. Marque o botão Eu concordo com os termos e condições acima para concordar com a licença e clique em Próximo para prosseguir.

Página de Informações da Loja do Prestashop

Em seguida, você será solicitado a compartilhar informações sobre a loja. Dê um nome à sua loja, país, fuso horário e tipo de loja, e habilite a opção SSL. Além disso, insira seu nome de conta, endereço de e-mail e senha para fazer login na loja. Clique em Próximo assim que terminar.

Página de Conteúdo da Loja do Prestashop

Em seguida, você será perguntado se deseja adicionar alguns produtos de demonstração à loja. Se não quiser, selecione não. Além disso, selecione a opção Instalar todos os módulos ou você pode escolher quais módulos deseja instalar. Clique em Próximo quando terminar.

Configuração do Banco de Dados do Prestashop

Em seguida, insira as credenciais do banco de dados que criamos no passo 5. Deixe as outras opções intactas. Clique na opção Testar do banco de dados para verificar a conexão.

Teste de Conexão do Banco de Dados do Prestashop

Clique em Próximo após a conexão bem-sucedida com o banco de dados para prosseguir para a próxima página.

Progresso da Instalação do Prestashop

Aqui você verá o progresso da instalação do Prestashop. Uma vez concluído, abrirá automaticamente a seguinte página.

Página de Instalação Concluída do Prestashop

Clique no botão Gerenciar sua loja para abrir o painel de administração e configurar sua loja.

Aviso do Diretório de Instalação do Prestashop

Aqui você receberá um aviso sobre a exclusão do diretório install antes de tentar gerenciar a loja para melhorar a segurança. Faça login novamente no seu site via SSH e execute o seguinte comando.

$ sudo rm -rf /var/www/html/petrashop/install

Volte para a página final do instalador e abra a URL novamente. Se você notar, a URL da página de administração é aleatória. Isso é feito para melhorar a segurança. Cada instalação do Prestashop recebe uma URL de admin diferente. Para nosso tutorial, o link gerado é https://prestashop.example.com/admin705saygwpwquwnhixx1. Você verá a seguinte página de login.

Página de Login do Prestashop

Insira suas credenciais de conta e clique no botão LOG IN para acessar o painel.

Painel de Administração do Prestashop

A página da loja do Prestashop para uma instalação padrão deve parecer com a seguinte.

Página Inicial do Prestashop

Você pode começar a usar o Prestashop a partir daqui.

Passo 12 - Atualizar Prestashop

Existem várias maneiras de atualizar o Prestashop. A mais fácil é usar o módulo de assistente de atualização embutido. Sua instalação do Prestashop vem com o módulo.

O primeiro passo é colocar sua loja em modo de manutenção. Clique na opção Configurar >> Parâmetros da Loja >> Geral no menu à esquerda na página de administração. Mude para a aba de manutenção na página.

Desative a loja e adicione seu endereço IP como o IP de manutenção clicando no botão Adicionar meu IP. Isso garantirá que você possa acessar a loja mesmo quando estiver em manutenção. Clique no botão Salvar quando terminar.

Página de Manutenção do Prestashop

Em seguida, abra a página Gerenciador de Módulos no seu painel de administração selecionando a opção Melhorar >> Módulos >> Gerenciador de Módulos no lado esquerdo.

Uma vez lá, instale o módulo 1-Click Upgrade clicando no botão Instalar. Uma vez instalado, clique no botão Configurar para abrir uma nova página onde você configura as configurações antes de realizar a atualização.

A primeira parte da página lista algumas verificações pré-atualização. Todas as verificações devem ser satisfeitas antes que a atualização possa ser realizada.

Checklist Pré-Atualização do Prestashop

A primeira configuração permite que você selecione que tipo de atualização deseja executar. Como estamos usando a edição básica 8.1.1, a edição 8.1.2 de código aberto está disponível para atualização. É recomendável manter-se nas ramificações menores/maiores.

Tipo de Atualização do Prestashop

Role para baixo na página até as Opções de Backup, onde você pode selecionar o Prestashop para fazer backup dos arquivos, banco de dados e imagens. Esses recursos são experimentais, mas você ainda deve incluí-los.

Opções de Backup do Prestashop

Em seguida, escolha as opções de atualização sobre o que você deseja manter e o que deseja atualizar.

Opções de Atualização do Prestashop

Clique no botão Salvar em cada seção para salvar as opções. Assim que estiver satisfeito, clique no botão Atualizar Prestashop Agora! na mesma página para atualizar sua loja. Se a atualização não for bem-sucedida por algum motivo, você terá a chance de reverter.

Conclusão

Isso conclui nosso tutorial onde você aprendeu como instalar o Prestashop em um servidor Rocky Linux 9. Se você tiver alguma dúvida, poste nos comentários abaixo.

Share: X/Twitter LinkedIn

Receba novas postagens na sua caixa de entrada

Sem spam. Cancele a assinatura a qualquer momento.