Como instalar prestashop en Debian 11.
Tags: webdev, cms
Published: 2023-10-03 05:20:46

En esta ocasión explicaremos cómo instalar PrestaShop en Debian 11 Bullseye paso a paso, de tal forma que puedas montar tu propio comercio electrónico sobre tu servidor o VPS Debian con esta conocida plataforma de e-commerce.

Si quieres seguir los pasos de esta guía de instalación de PrestaShop en Debian 11 Bullseye deberías partir del siguiente escenario:


1. Una máquina Debian 11 Bullseye actualizada.
2. 
3. La pila LAMP (servicio web con PHP y bases de datos MariaDB/MySQL).
4. 
5. Acceso seguro mediante SSL al servicio web.
6. 
7. Un usuario con permisos de sudo.
8. 
9. Conexión a Internet.

También necesitaremos alguna herramienta procedente de los repositorios de Debian 11, así que los actualizamos:
`sudo apt update`

E instalamos el paquete necesario:
`sudo apt install -y unzip`

Vamos a descargar PrestaShop para Debian 11 Bullseye directamente desde la sección de descargas del sitio oficial, ya que los repositorios de la distribución no ofrecen paquetes para esta aplicación:
`wget https://download.prestashop.com/download/releases/prestashop_1.7.8.0.zip`

Descomprimimos el paquete que acabamos de descargar en una ubicación adecuada:
`sudo unzip prestashop_1.7.8.0.zip -d /var/www/prestashop`
Como PrestaShop necesita escribir en su propio directorio de instalación, concedemos la propiedad del mismo al usuario con el que corre el servicio web:
`sudo chown -R www-data: /var/www/prestashop/`
PrestaShop puede hacer uso de funcionalidades incluidas en el módulo Rewrite de Apache, pero este módulo no se encuentra activado por defecto en Debian 11, así que lo activamos:
`sudo a2enmod rewrite`
También crearemos un archivo de configuración del servicio web para PrestaShop:
`sudo nano /etc/apache2/sites-available/prestashop.conf`

Con un contenido similar al siguiente:

```
Alias /shop /var/www/prestashop
<Directory /var/www/prestashop>
        AllowOverride all
</Directory>
```

En primer lugar definimos el alias /shop para hacer navegable la aplicación (puedes usar otro alias, como /tienda o cualquier otro que se te ocurra).

Después activamos las configuraciones personalizadas en archivos .htaccess en el directorio de instalación de PrestaShop, ya que el uso de estos archivos también está desactivado por defecto.

Una vez guardado el archivo, activamos esta nueva configuración:
`sudo a2ensite prestashop.conf`
Y reiniciamos el servicio web:

`sudo systemctl restart apache2`

PrestaShop necesita algunas extensiones de este lenguaje que instalamos desde los repositorios del sistema.

En el caso de usar la versión de PHP incluida en Debian 11 instalamos estos paquetes:
`sudo apt install -y php-curl php-gd php-intl php-mbstring php-xml php-zip`

Y si usamos una versión del repositorio alternativo, tendremos que indicarla en el nombre de los paquetes; por ejemplo, para la versión 8.0:

```
sudo apt install -y php8.0-curl php8.0-gd php8.0-intl php8.0-mbstring php8.0-xml php8.0-zip
```

Terminada la instalación, recargamos la configuración del servicio:
`sudo systemctl reload apache2`

Prestashop necesita trabajar sobre una base de datos del servicio instalado en nuestra máquina Debian 11 Bullseye. Para prepararla, conectamos al servicio con el cliente de consola mysql y un usuario administrador:

`mysql -u root -p`

Creamos la base de datos:

```
create database prestashop charset utf8mb4 collate utf8mb4_unicode_ci;

```

Creamos el usuario: 
`create user prestashop@localhost identified by 'XXXXXXXX';`

Concedemos los permisos correspondientes al usuario:

```
grant all privileges on prestashop.* to prestashop@localhost;
```
Refrescamos la tabla de permisos:

```
flush privileges;
```

Y cerramos la conexión:
`exit`

Luego configuramos desde la web y despues de instalar todo borramos el instalador:
`sudo rm -rf /var/www/prestashop/install/`


Bibliografia:[ https://chachocool.com/como-instalar-prestashop-en-debian-11-bullseye/](https://chachocool.com/como-instalar-prestashop-en-debian-11-bullseye/)