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.comapontando 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.

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.

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

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.

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.

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.

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.

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

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

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

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.

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

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

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.

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.

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.

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.

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

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.
Receba novas postagens na sua caixa de entrada
Sem spam. Cancele a assinatura a qualquer momento.