Androide

Cómo instalar prestashop en ubuntu 18.04

How to Install Prestashop CMS on Ubuntu 18.10

How to Install Prestashop CMS on Ubuntu 18.10

Tabla de contenido:

Anonim

PrestaShop es una plataforma de comercio electrónico gratuita y de código abierto. Está basado en PHP y MySQL y puede ampliarse con complementos y temas gratuitos y premium.

Con características como una interfaz administrativa intuitiva, múltiples pasarelas de pago, multilingües, analíticos e informes, PrestaShop es una plataforma de elección para muchos comerciantes en línea.

En este tutorial, le mostraremos cómo instalar PrestaShop en el servidor Ubuntu 18.04. Usaremos Nginx como servidor web, el último PHP 7.2 y MySQL / MariaDB como servidor de base de datos.

Prerrequisitos

Asegúrese de cumplir con los siguientes requisitos previos antes de continuar con este tutorial:

  • Tenga un nombre de dominio que apunte a la IP de su servidor público. Usaremos example.com .Nginx se instala en su servidor Ubuntu siguiendo estas instrucciones. Se instaló un certificado SSL para su dominio para encriptar la información del usuario. Puede instalar un certificado SSL Let's Encrypt gratuito siguiendo estas instrucciones.

Actualice los paquetes del sistema a las últimas versiones e instale la utilidad de descompresión:

sudo apt update && sudo apt upgrade sudo apt install unzip

Crear una base de datos MySQL

PrestaShop almacena su información en una base de datos MySQL.

Si MySQL o MariaDB está instalado en su servidor, puede omitir este paso. De lo contrario, instale el paquete del servidor MySQL 5.7 desde los repositorios predeterminados de Ubuntu escribiendo:

sudo apt install mysql-server mysql-client Para nuevas instalaciones de MySQL, se recomienda ejecutar el comando mysql_secure_installation para mejorar la seguridad de su servidor MySQL.

Para crear una base de datos, inicie sesión en el shell mysql:

sudo mysql

Desde el shell de MySQL, ejecute la siguiente instrucción SQL para crear una nueva base de datos llamada prestashop :

CREATE DATABASE prestashop;

A continuación, cree una cuenta de usuario MySQL llamada prestashop y otorgue los permisos necesarios al usuario ejecutando el siguiente comando:

GRANT ALL ON prestashop.* TO 'prestashop'@'localhost' IDENTIFIED BY 'change-with-strong-password'; No olvides cambiar change-with-strong-password con una contraseña segura.

Una vez hecho esto, salga de la consola MySQL escribiendo:

EXIT;

Instalar y configurar PHP

PHP 7.2 es la versión predeterminada de PHP en Ubuntu 18.04, y es totalmente compatible y recomendado para PrestaShop.

Ejecute el siguiente comando para instalar PHP y todos los módulos PHP necesarios:

sudo apt install php7.2-common php7.2-cli php7.2-fpm php7.2-opcache php7.2-gd php7.2-mysql php7.2-curl php7.2-intl php7.2-xsl php7.2-mbstring php7.2-zip php7.2-bcmath php7.2-soap

Una vez que se completa el proceso de instalación, el servicio PHP-FPM se iniciará automáticamente. Puede verificarlo escribiendo:

sudo systemctl status php7.2-fpm

La salida debería verse así:

* php7.2-fpm.service - The PHP 7.2 FastCGI Process Manager Loaded: loaded (/lib/systemd/system/php7.2-fpm.service; enabled; vendor preset: enabled) Active: active (running) since Sun 2019-03-24 11:53:33 PDT; 14s ago Docs: man:php-fpm7.2(8) Main PID: 15853 (php-fpm7.2) Status: "Processes active: 0, idle: 2, Requests: 0, slow: 0, Traffic: 0req/sec"

Ejecute los siguientes comandos sed para configurar las opciones de PHP recomendadas:

sudo sed -i "s/memory_limit =.*/memory_limit = 1024M/" /etc/php/7.2/fpm/php.ini sudo sed -i "s/upload_max_filesize =.*/upload_max_filesize = 256M/" /etc/php/7.2/fpm/php.ini sudo sed -i "s/zlib.output_compression =.*/zlib.output_compression = on/" /etc/php/7.2/fpm/php.ini sudo sed -i "s/max_execution_time =.*/max_execution_time = 18000/" /etc/php/7.2/fpm/php.ini sudo sed -i "s/;date.timezone.*/date.timezone = UTC/" /etc/php/7.2/fpm/php.ini sudo sed -i "s/;opcache.save_comments.*/opcache.save_comments = 1/" /etc/php/7.2/fpm/php.ini

Descargando PrestaShop

Al momento de escribir este artículo, la última versión estable de PrestaShop es la versión 1.7.6.2 .

Descargue la última versión de PrestaShop de la página de descargas de PrestaShop utilizando el siguiente comando wget:

cd /tmp wget

Cuando se complete la descarga, cree un directorio que contendrá nuestros archivos de PrestaShop:

sudo mkdir -p /var/www/html/example.com

A continuación, extraiga el archivo de PrestaShop:

unzip prestashop_*.zip

Este archivo contiene otro archivo zip "prestashop.zip", que contiene todos los archivos de PrestaShop. Extraiga los archivos en el directorio raíz de documentos del dominio:

sudo unzip prestashop.zip -d /var/www/html/example.com

Establezca los permisos correctos para que el servidor web pueda tener acceso completo a los archivos y directorios del sitio utilizando el siguiente comando chown :

sudo chown -R www-data: /var/www/html

Configurando Nginx

Por ahora, ya debería tener Nginx con un certificado SSL instalado en su servidor Ubuntu. De lo contrario, verifique los requisitos previos para este tutorial.

Abra su editor de texto y cree el siguiente archivo:

sudo nano /etc/nginx/sites-available/example.com /etc/nginx/sites-available/example.com

server { listen 80; listen 443 ssl http2; server_name example.com www.example.com; root /var/www/html/example.com; index index.php; # SSL parameters ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem; include snippets/ssl.conf; include snippets/letsencrypt.conf; # Cloudflare / Max CDN fix location ~* \.(eot|otf|ttf|woff(?:2)?)$ { add_header Access-Control-Allow-Origin *; } # Do not save logs for these location = /favicon.ico { auth_basic off; allow all; log_not_found off; access_log off; } location = /robots.txt { auth_basic off; allow all; log_not_found off; access_log off; } # Images rewrite ^/()(-*)?(-+)?/.+.jpg$ /img/p/$1/$1$2$3.jpg last; rewrite ^/()()(-*)?(-+)?/.+.jpg$ /img/p/$1/$2/$1$2$3$4.jpg last; rewrite ^/()()()(-*)?(-+)?/.+.jpg$ /img/p/$1/$2/$3/$1$2$3$4$5.jpg last; rewrite ^/()()()()(-*)?(-+)?/.+.jpg$ /img/p/$1/$2/$3/$4/$1$2$3$4$5$6.jpg last; rewrite ^/()()()()()(-*)?(-+)?/.+.jpg$ /img/p/$1/$2/$3/$4/$5/$1$2$3$4$5$6$7.jpg last; rewrite ^/()()()()()()(-*)?(-+)?/.+.jpg$ /img/p/$1/$2/$3/$4/$5/$6/$1$2$3$4$5$6$7$8.jpg last; rewrite ^/()()()()()()()(-*)?(-+)?/.+.jpg$ /img/p/$1/$2/$3/$4/$5/$6/$7/$1$2$3$4$5$6$7$8$9.jpg last; rewrite ^/()()()()()()()()(-*)?(-+)?/.+.jpg$ /img/p/$1/$2/$3/$4/$5/$6/$7/$8/$1$2$3$4$5$6$7$8$9$10.jpg last; rewrite ^/c/(+)(-*)(-+)?/.+.jpg$ /img/c/$1$2$3.jpg last; rewrite ^/c/(+)(-+)?/.+.jpg$ /img/c/$1$2.jpg last; # AlphaImageLoader for IE and fancybox rewrite ^images_ie/?(+)\.(jpe?g|png|gif)$ js/jquery/plugins/fancybox/images/$1.$2 last; # Web service API rewrite ^/api/?(.*)$ /webservice/dispatcher.php?url=$1 last; # Installation sandbox rewrite ^(/install(?:-dev)?/sandbox)/(.*) /$1/test.php last; #Change this block to your admin folder location /admin_CHANGE_ME { if (!-e $request_filename) { rewrite ^/.*$ /admin_CHANGE_ME/index.php last; } } # File security #.htaccess.DS_Store.htpasswd etc location ~ /\. { deny all; } # Source code directories location ~ ^/(app|bin|cache|classes|config|controllers|docs|localization|override|src|tests|tools|translations|travis-scripts|vendor|var)/ { deny all; } # Prevent exposing other sensitive files location ~ \.(yml|log|tpl|twig|sass)$ { deny all; } # Prevent injection of php files location /upload { location ~ \.php$ { deny all; } } location /img { location ~ \.php$ { deny all; } } # PHP FPM part location ~ \.php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/run/php/php7.2-fpm.sock; } }

No olvide reemplazar example.com con su dominio PrestaShop y "admin_CHANGE_ME" con su directorio de administración. Puede encontrar el nombre del directorio enumerando el contenido del directorio raíz de Prestashop:

sudo ls -l /var/www/html/example.com | grep admin

También asegúrese de utilizar la ruta correcta a los archivos de certificado SSL. Los fragmentos utilizados en esta configuración se crean en esta guía.

Antes de reiniciar el servicio Nginx, verifique la configuración en busca de errores de sintaxis:

sudo nginx -t

La salida debería verse así:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful

Finalmente, reinicie el servicio Nginx escribiendo:

sudo systemctl restart nginx

Instalar PrestaShop

Ahora que PrestaShop está descargado y la configuración del servidor está completa, puede finalizar la instalación a través de la interfaz web.

Abra su navegador, escriba su dominio y aparecerá una pantalla similar a la siguiente:

Por razones de seguridad, deberá eliminar el directorio de instalación. Para hacerlo, regrese a la terminal e ingrese el siguiente comando rm :

sudo rm -rf /var/www/html/example.com/install

Para acceder a su panel administrativo de PrestaShop, haga clic en el botón "Administrar su tienda". Ingrese su correo electrónico y contraseña, y será redirigido al panel de administración.

Desde aquí, puede comenzar a personalizar su instalación de PrestaShop y agregar nuevos productos.

Conclusión

Ha instalado correctamente PrestaShop en su servidor Ubuntu 18.04. La documentación de PrestaShop es un buen punto de partida para aprender más sobre cómo administrar su instalación de PrestaShop.

ubuntu prestashop mysql php nginx ecommerce