Usando Linux para muchas cosas y disfrutando de videojuegos, en dispositivos moviles, consolas y pc. Using Linux for many things and enjoying video games, mobile devices, consoles and pc

Una pagina cambio y no la vemos con pfsense 2

DriveMeca refrescando el cache en un pfSense paso a paso
Imagina el siguiente escenario, tienes una red LAN con un pfSense sirviendo de firewall / proxy con squid. Acabas de cambiar una pagina web o sabes de un cambio pero no lo puedes ver. Esto es debido a que Squid y dnsmasq almacenan en disco y memoria las paginas mas visitadas por un periodo de tiempo, agilizando la navegación y usando menos ancho de banda. Si, hoy te hablare de como refrescar el cache manejado por dnsmasq en firewall pfSense paso a paso.

Requerimientos para refrescar cache dnsmasq en pfSense

Para forzar un refrescamiento del cache haremos lo siguiente:

-Entramos vía web a la interfaz de pfSense firewall y vamos al menú Status - Services
DriveMeca refrescando el cache en un pfSense paso a paso


Reiniciamos el servicio DNS Resolver en servidor pfSense

-Nos aparecen los servicios instalados, ejecutándose y parados. El que nos interesa es el unbound DNS Resolver. Todos los servicios tienen varios iconos a la derecha de la pantalla con funciones diferentes
DriveMeca refrescando el cache en un pfSense paso a paso


 -Debemos darle click al icono Restart Service (colocando el cursor del mouse por unos segundos encima mostrara el letrero) al servicio unbound. El icono cambiara a una rueda dentada girando por unos segundos
DriveMeca refrescando el cache en un pfSense paso a paso

Ya podemos probar a visitar la pagina con cambios nuevamente y ya debemos poder verlos


Artículos recomendados: Como configurar DHCP Server en PFsense 2 paso a paso
                                           Monitorea pfSense por medio de NRPE y Nagios
                                           Que tanto usas tu proxy, Estadisticas de squid en pfsense
                                           pfSense SquidGuard tutorial paso a paso
                                           Como actualizar pfSense paso a paso


Esto te puede salvar horas y hasta días rompiéndote la cabeza en como resolver este problema con tu firewall proxy. Te gusto el articulo? hazme un favor, compártelo en tus redes sociales (compartir es sexy). Escríbeme en los comentarios aquí debajo y pasa la voz compartiendo el tweet.

Sígueme en twitter google+facebook o email y podrás estar enterado de todas mis publicaciones.
Disfrútenlo.

Share/Bookmark

Como personalizar error de Squidguard en pfSense paso a paso

DriveMeca personalizando la pagina de error de SquidGuard en pfSense
Un proxy nos ahorra tiempo y dinero ademas de evitar muchos problemas de seguridad al bloquear archivos maliciosos. Sobre proxy ya he escrito varios artículos, varios de ellos con el tema de squid + squidguard sobre pfSense pero no había aun tocado el tema de personalizar la pagina de error cuando se filtra un sitio web y gracias a uno de mis lectores, también fan del opensource, me puse a investigar como hacerlo.

Esto nos puede servir para dar mas información en esta pagina (la que viene por default es muy reducida) o colocar el logo de nuestro negocio o firma, etc. Ahora si, con un poco de html básico hagamos los cambios para tener una pagina de error mucho mas profesional y con mas información a la mano.

Requerimientos para personalizar pagina de error SquidGuard

-Normalmente la estructura de el error por default de Squidguard es así:
DriveMeca personalizando la pagina de error de SquidGuard en pfSense

-Entramos a la interfaz web de pfSense firewall y  nos vamos a el menú Diagnostics - Edit File
DriveMeca personalizando la pagina de error de SquidGuard en pfSense


Personalizamos función de error de SquidGuard en pfSense

-Ya allí editamos el fichero /usr/local/www/sgerror.php escribiendolo en la caja de texto. Damos click al botón Load
DriveMeca personalizando la pagina de error de SquidGuard en pfSense

-Buscamos la función get_error_page y la modificamos de la siguiente forma (aconsejable sacar una copia antes por si algo sale mal, una forma sencilla de hacerle backup es copiarla y pegarla en un archivo txt). Es muy importante tener cuidado con espacios en blanco o tabulaciones.

Reemplazamos email-del-administrador@gmail.com por el email del administrador encargado (al que le escribirán los usuarios reportando paginas bloqueadas que no lo deberían estar, por ejemplo) y drivemeca-squid-cache_logo.jpg por el jpg que queremos colocar al fondo (en este ejemplo es el que muestra la mascota de squid)
DriveMeca personalizando la pagina de error de SquidGuard en pfSense


function get_error_page($er_code_id, $err_msg='') {
        global $err_code;
        global $cl;
        global $g;
        global $config;
        $str = Array();

header("HTTP/1.1 " . $err_code[$er_code_id]);
$str[] = '<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">';
$str[] = '<html>';
$str[] = '<head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><title></title></head>';
$str[] = '<body style="background-color:#FFFFFF; font-family:verdana, arial, sans serif;">';
$str[] = '<div style="width:70%; margin:20px auto;">';
$str[] = '<div style="padding:5px; background-color:#C0C0C0; text-align:center; font-weight:bold; font-family:verdana,arial,sans serif; color:#000000; font-size:60%;">';

if ($cl['n']) $str[] = "Nombre: {$cl['n']} | ";
if ($cl['a']) $str[] = "IP: {$cl['a']} | ";
if ($cl['i'])  $str[] = "Usuario: {$cl['i']} | ";
if ($cl['s']) $str[] = "Grupo: {$cl['s']} | ";
if ($cl['t']) $str[] = "Categoria: {$cl['t']} ";
if ($cl['u']) $str[] = "URL: {$cl['u']} ";

$str[] = '</div><div style="background-color:#F4F4F4; text-align:center; padding:20px;">';
$str[] = '<div style="letter-spacing:0.5em; word-spacing:1em; padding:20px; background-color:#FF0000; text-align:center; color:#FFFFFF; font-size:200%; font-weight: bold;">Acceso denegado</div>';
$str[] = '<div style="padding:20px; margin-top:20px; background-color:#E2E2E2; text-align:center; color:#000000; font-family:verdana, arial, sans serif; font-size:80%;">';

if ($cl['u'])        $str[] = "<p><b>URL: {$cl['u']}</b></p>";
$str[] = '<div style="text-align:left;">';
$str[] = '<p><b>El website que ud trata de visitar a sido bloqueado por nuestras politicas de filtrado web</b></p>';

$str[] = '<p><font color="#000000" size="1" face="Verdana, Arial, Helvetica, sans-serif">El acceso ha sido denegado por una de las siguientes razones:</font></p>';
$str[] = '<ul>';
$str[] = '<li><font size="1" face="Verdana, Arial, Helvetica, sans-serif">Esta pagina contiene o esta etiquetada como material inapropiado.</font></li>';
$str[] = '<li><font size="1" face="Verdana, Arial, Helvetica, sans-serif">Su usuario esta bajo una politica que no le permite acceder a sitios en esta categoria.</font></li>';
$str[] = '<li><font size="1" face="Verdana, Arial, Helvetica, sans-serif">Por favor, de click <a href="javascript:history.back()">aqui</a> para devolverse a la pagina anterior.</font></li>';
$str[] = '<li id="list3"><font size="1" face="Verdana, Arial, Helvetica, sans-serif"> Por favor contacte al <a href="mailto:email-del-administrador@gmail.com?Subject=Sitio web bloqueado por squidguard">Administrador del proxy</a> si piensa que esto es un error. Por favor, incluya toda la informacion del caso.</font></li>';
$str[] = '</ul>';

$str[] = '<p><img style="padding-top:20px;display: block;margin: 0px auto" src="http://'. $_SERVER['HTTP_HOST'] .'/drivemeca-squid-cache_logo.jpg" alt="geblockt"></p></div></div>';
$str[] = '<div style="padding:5px; background-color:#C0C0C0; text-align:right; color:#FFFFFF; font-size:60%; font-family:verdana,arial,sans serif;">Filtrado Web hecho por <a style="color:#FFFFFF;"><b>PfSense</b></a> y <a style="color:#FFFFFF;"><b>SquidGuard</b></a></div></div>';
$str[] = "</body>";
$str[] = "</html>";

return implode("\n", $str);
}

-Copiamos el banner gráfico desde el menú Diagnostics - Command Prompt
DriveMeca personalizando la pagina de error de SquidGuard en pfSense

-Copiamos dando click al botón Seleccionar archivo de la sección Upload File y damos click al botón Upload
DriveMeca personalizando la pagina de error de SquidGuard en pfSense

-Ejecutamos el comando mv /tmp/drivemeca-squid-cache_logo.jpg /usr/local/www desde la sección Execute Shell command y damos click al botón Execute. Este comando moverá el banner gráfico al sitio donde lo cargara la función modificada por nosotros
DriveMeca personalizando la pagina de error de SquidGuard en pfSense

-Verificamos haya quedado el banner gráfico ejecutando por medio de Execute Shell Command el comando ls -la /usr/local/www/*.jpg. Damos click al botón Execute y debe mostrarnos el archivo jpg en su sitio
DriveMeca personalizando la pagina de error de SquidGuard en pfSense


Chequeamos funcionamiento de pagina de error SquidGuard en pfSense

-Muy bien, ya tenemos una pagina de error personalizada mas profesional. Verificamos su funcionamiento tratando de navegar a una pagina que debería estar bloqueada en nuestro firewall pfSense con SquidGuard, ejemplo, www.playboy.com
DriveMeca personalizando la pagina de error de SquidGuard en pfSense


Artículos recomendados: Como configurar OpenVPN en pfSense paso a paso
                                           Como actualizar pfSense paso a paso
                                           Que tanto usas tu proxy, Estadísticas de squid en pfsense
                                           Monitorea pfSense por medio de NRPE y Nagios
                                           Como configurar DHCP Server en PFsense 2 paso a paso


Te parece útil este tema? ya tienes tu pagina de error personalizada? Usas SquidGuard? Te gusto el articulo? hazme un favor, compártelo en tus redes sociales (compartir es sexy). Escríbeme en los comentarios aquí debajo y pasa la voz compartiendo el tweet.

Sígueme en twitter google+facebook o email y podrás estar enterado de todas mis publicaciones.
Disfrútenlo.

Share/Bookmark

Como instalar Adminer en Linux Centos paso a paso

DriveMeca Adminer logo
En este mundo del opensource para hacer una tarea existen muchas soluciones y herramientas lo cual lo hace maravilloso por que cada uno se acomoda a lo que mas le gusta o mejor sienta que haga su trabajo. Hoy veremos una herramienta web, Adminer, la cual en cierta forma es un reemplazo para PhpMyAdmin. Es un único archivo php que descargamos en nuestro servidor LAMP y ya con esto tendremos acceso a nuestro mariadb, mysql u otros manejadores de bases de datos soportados.
Adminer es mucho mas rápido, seguro y sencillo de manejar ademas de que se puede personalizar por medio de pieles (skins) y plugins que lo hacen mas poderoso y divertido de manejar.

Requisitos


-Nos movemos al directorio default de apache en Centos, creamos un directorio y descargamos el php de adminer

cd /var/www/html
mkdir adminer
cd adminer

wget http://downloads.sourceforge.net/project/adminer/Adminer/Adminer%204.2.2/adminer-4.2.2.php

-Activamos permisos para apache en el directorio y php de adminer

chown -R apache.apache ../adminer/

-Abrimos un browser y navegamos a la ip de nuestro servidor web donde instalamos Adminer de la forma http://ip-servidor/adminer/adminer-4.2.2.php. Ingresamos con la cuenta root
DriveMeca instalando Adminer en un Linux Centos 7 paso a paso

-Ya dentro vemos una interfaz web sencilla con el listado de las db existentes listas para modificarlas 
DriveMeca instalando Adminer en un Linux Centos 7 paso a paso

-Las posibilidades son las mismas que si usáramos el cli con la diferencia de la facilidad de uso
DriveMeca instalando Adminer en un Linux Centos 7 paso a paso

-Es bueno recordar que no solo lo podemos usar para mysql/mariadb, también para otros servidores como PostgreSql nos puede servir
DriveMeca instalando Adminer en un Linux Centos 7 paso a paso

Con esto terminamos de mostrar como instalar y comenzar a usar Adminer, una pequeña pero potente herramienta web hecha en php para manejar nuestras db. Ya usas Adminer? Que tal te ha parecido?
Si te resulto útil este articulo, se social, haz un tweet, compártelo con otros por medio de los botones o sígueme en twitter google+facebook o email y podrás estar enterado de todas mis publicaciones.
Disfrútenlo.

Share/Bookmark

Como bloquear paginas con Tomato 1.28

DriveMeca bloqueando trafico con firmware Tomato en un Linksys WRT54G
En casa tengo un problema, la hija menor usa demasiado redes sociales, mira vídeos, etc, en vez de hacer tareas o cuando mas necesito ancho de banda, esta descargando una película o viéndola en youtube consumiendo los preciados kbps. Por eso decidí colocar unos filtros en mi router wifi Linksys WRT54G.
A este router le cambie el firmware original por Tomato 1.28 dándole mas funcionalidad a mi red wifi.


Requerimientos para bloquear trafico con firmware Tomato


  • router Linksys WRT54G en la ip 192.168.1.1 (haz los cambios segun tu ip)
  • Conectividad a internet

-Nos conectamos desde un browser a Tomato en el router http://192.168.1.1/
DriveMeca bloqueando trafico con firmware Tomato en un Linksys WRT54G

-En el menú Device List anotamos la Mac Address del equipo que queremos restringir. De las 2 variantes, por ip o por mac es mas fiable esta ultima porque no pasara mucho tiempo en que la persona restringida aprenda a cambiar su ip y quedara por fuera del filtro. En este caso anoto la Mac de lalopc
DriveMeca bloqueando trafico con firmware Tomato en un Linksys WRT54G


Creamos regla de bloqueo trafico web con firmware Tomato Linksys WRT54G

-Agregamos una regla en el menu Access restriction dándole click al botón Add
DriveMeca bloqueando trafico con firmware Tomato en un Linksys WRT54G

-Le colocamos un nombre a la regla y decidimos si bloqueamos todo el acceso o si lo hacemos algunos días en un horario. Yo elegí esta ultima opción. A continuación, debajo de Rules, podemos bloquear por protocolo con puerto o por aplicación con Layer 7, ejemplo, bloqueo el uso de Ares (software p2p para bajar música, películas, etc)


DriveMeca bloqueando trafico con firmware Tomato en un Linksys WRT54G

-Me tomo mi tiempo y coloco todas las aplicaciones que quiero bloquear en ese horario. Agrego en la caja de texto palabras de sitios a bloquear, ejemplo, facebook y youtube. Aquí podemos usar comodines, usaremos ^ delante de un dominio, ejemplo ^www.facebook.com para que bloquee solo ese dominio, no app.facebook.com, etc. Usaremos * para bloquear todos los dominios o alias, ejemplo, facebook.com* bloquearia app.facebook.com, www.facebook.com, etc.
DriveMeca bloqueando trafico con firmware Tomato en un Linksys WRT54G

-Encontraremos un problema, no se pueden bloquear paginas con https, es decir, con certificado, la opción, es bloquear la salida al puerto tcp/udp 443. Así lo hice y guardamos dando click al botón Save
DriveMeca bloqueando trafico con firmware Tomato en un Linksys WRT54G


Verificamos bloqueo de trafico web con firmware Tomato en Linksys WRT54G

-Una forma de verificar si nuestra regla funciona es colocando la Mac de nuestro pc además del que queremos restringir, probar que si se este bloqueando lo que queremos y dejando pasar lo que si necesita la otra persona. Cuando ya este ok el filtro, quitamos nuestra Mac y listo. OJO, siempre recuerda darle click al boton Save para guardar y activar los cambios.

Artículos recomendadosComo instalar firmware dd-wrt en un router Linksys wrt54g
                                            Instalando pfSense paso a paso sin morir en el intento
                                            Como instalar NethServer paso a paso
                                            Como instalar Ipfire paso a paso


Mas tranquilo y feliz ahora que tienes mas control de tu trafico? Tienes otra forma de controlar el trafico, cual? Te gusto el articulo? hazme un favor, compártelo en tus redes sociales (compartir es sexy). Escríbeme en los comentarios aquí debajo y pasa la voz compartiendo el tweet.
Sígueme en twitter google+facebook o email y podrás estar enterado de todas mis publicaciones.
Disfrútenlo.

Share/Bookmark

Como crear un blog con dominio propio en Blogger

DriveMeca instalando dominio propio en Blogger paso a paso
Anoche comencé un nuevo proyecto, crear un nuevo blog para un negocio naciente que estoy haciendo. Ya con un tiempo en el mundo de las publicaciones en blogger me han gustado mucho sus herramientas y sobre todo su integración con adsense, adwords, analytics y mas herramientas Google por eso decidí crearlo en la misma plataforma en la que tengo este que están leyendo ahora.
Entonces prepara tu taza de café y veamos como se hace.


Requerimientos para un blog con dominio propio en Blogger


  • Cuenta de gmail
  • Dominio para el nuevo blog


-Tu blog en blogger se llamara ejemplo.blogger.com (es decir, ejemplo seria tu nombre + el dominio blogger.com) normalmente, para personalizar esto tienes 2 opciones que veremos a continuación. Para ello debes navegar a blogger.com y crear un blog, no importa como lo llames de inicio

DriveMeca instalando dominio propio en Blogger paso a paso

Opciones para crear tu blog con dominio propio en Blogger

Primera opción: No tienes el dominio?, google te lo vende y configura automáticamente para funcionar con los servicios como youtube, documents, blogger, gmail, etc

Segunda opción: Ya tienes el dominio (estilo ejemplo.com diriamos). Lo quieres configurar con un subdominio, ejemplo, blog.example.com (dejando así la posibilidad de tu pagina central en www.example.com)

-Agregamos el subdominio en el menú configuración - Básico - Añadir un dominio personalizado - configuración avanzada y guardamos.

DriveMeca instalando dominio propio en Blogger paso a paso

DriveMeca instalando dominio propio en Blogger paso a paso

-En caso de dudas como hacer los cambios en tu DNS (generalmente donde compraste el dominio te darán el servicio de DNS), blogger te ayuda dando click en instrucciones de configuracion

DriveMeca instalando dominio propio en Blogger paso a paso

-Agregamos un campo CNAME en la zona DNS de nuestro dominio así (suponiendo que nuestro blog se vaya a llamar blog.example.com):

blog. 14400 IN CNAME ghs.google.com

Con esto estamos redireccionando el trafico que venga a blog.example.com a la dirección ghs.google.com
Hay que tener en cuenta que todo cambio en DNS demora de 24 a 48 horas en hacerse efectivo en internet, a veces menos, entonces no te preocupes si apenas haces el cambio no te funciono.

Artículos recomendadosComo eliminar fecha y hora de artículos de Blogger
                                           Como agregar RSS a tu blog en Blogger
                                           Como activar SSL en Blogspot en menos de un minuto
                                           Como instalar una plantilla responsive en Blogger


Ok, con esto ya tendrás tu blog en blogger con tu propio dominio.Te gusto el articulo? hazme un favor, compártelo en tus redes sociales (compartir es sexy). Escríbeme en los comentarios aquí debajo y pasa la voz compartiendo el tweet.

Sígueme en twitter google+facebook o email y podrás estar enterado de todas mis publicaciones.
Disfrútenlo.

Share/Bookmark

Solo por hoy hosting barato. No pierdas esta gran oportunidad

DriveMeca te trae una promocion solo por el dia de hoy
En internet la competencia es feroz y es normal encontrar ofertas increíbles pero, OJO, primero hay que investigar un poco, leer comentarios, etc, si vas a adquirir/comprar algo como por ejemplo el hosting para tu sitio web.
Hoy y solo por hoy (solo el 9 de agosto de 2016) te traigo una promoción (Promoción Flash) de Bluehost con la que el mes de hosting te saldrá por solo 2.95 USD por 1 año con un click aquí.

Quien es Bluehost y por que elegirlo?

  • Es una compañía solida formada en el 2003 en USA (mas exactamente en Orem, Utah)
  • A la fecha tienen mas de 2 millones de sitios en sus hosting
  • Su soporte cuenta con mas de 750 personas en un horario de 24 horas 7 días a la semana
  • Bluehost apoya y trabaja de la mano con Wordpress, si tu idea es usar este CMS, no estarás en mejores manos
  • Estas en un blog sobre opensource, cierto? Bien, ellos usan y apoyan el código abierto
  • Forman parte de Endurance International Group’s
Ok, creo que ya tomaste la idea cierto? Así que si necesitas o andas buscando un buen sitio para tener tu proyecto web, aplicación, blog, etc, esta es la oportunidad. Yo ganare una comisión y tu te beneficiaras de una excelente promoción si das click aquí!!

Si no necesitas esto pero conoces a alguien que si le podría interesar, te agradezco se lo hagas llegar y hazme un favor, compártelo en tus redes sociales (compartir es sexy). Escríbeme en los comentarios aquí debajo y pasa la voz compartiendo el tweet.

Sígueme en twitter google+facebook o email y podrás estar enterado de todas mis publicaciones.
Disfrútenlo.

Share/Bookmark

Instalando y ejecutando Metroid 2 en Linux Ubuntu

DriveMeca instalando y jugando Metroid 2 en Linux Ubuntu
Muchos, incluido yo, llegamos a los sistemas gracias a los videojuegos, sea por curiosidad, sea como reto (yo quiero hacer un videojuego así o mejor) o hasta como modo de vida con trabajo incluido.
Ahora, el tiempo pasa y con el, cada vez se vuelven mas realistas pero muchos seguimos recordando con nostalgia los videojuegos en 2D, tipo plataforma, cuando no existía Google, no podíamos buscar en youtube como pasar un nivel ni nada parecido. Bien, navegando me encontré una joya, nada menos que un remake de Metroid 2.
Metroid fue y es un gran videojuego que nos ha marcado a muchos por lo que encontrar un trabajo hecho, GRATIS, hecho por una única persona (demoro varios años) y con ese nivel de calidad. De verdad, mis respetos y ojala Nintendo no se interponga y dañe este esfuerzo.
Te preguntaras, sobre que es el articulo de hoy, bien, dos cosas, darte a conocer este proyecto por si eres fan como yo de los videojuegos y claro, como instalarlo en Linux. Aunque en el blog habla de descargarlo para Microsoft Windows y que mas adelante...habrá una versión para nuestro OS preferido no me senté a esperar y probé a ejecutarlo con Wine en Linux Ubuntu Xenial dando por resultado que si, SI se puede ejecutar normalmente y disfrutar de el. Ahora si, te muestro como.


Requerimientos para ejecutar Metroid 2 Remake en Linux Ubuntu



-Abrimos un browser y descargamos el zip de AM2R. Sugiero hacerlo por medio de torrent, mas rápido y confiable. Después de descargado lo descomprimimos y abrimos su carpeta con Nautilus

Articulos recomendadoComo instalar FrostWire paso a paso
                                        Como crear una USB booteable con Etcher


Ejecutamos Metroid 2 en Linux Ubuntu MATE

-Damos doble click en el archivo AM2R.exe para ejecutar el binario
DriveMeca instalando y jugando Metroid 2 en Linux Ubuntu

-Si tienes ya instalado y configurado correctamente Wine, te saldrá la pantalla de inicio de AM2R Return of Samus. Presionamos Enter
DriveMeca instalando y jugando Metroid 2 en Linux Ubuntu

-La siguiente pantalla nos permite crear 3 slots de juegos guardados. Las diferentes opciones las podemos acceder por medio del cursor, Seleccionamos con Z (z en mayúsculas)
DriveMeca instalando y jugando Metroid 2 en Linux Ubuntu

-Ya dentro de una partida contamos con un mapa entre otras opciones
DriveMeca instalando y jugando Metroid 2 en Linux Ubuntu

-Podemos jugar Metroid 2 sin ningún problema y disfrutar de este clásico de los videojuegos en nuestro Linux Ubuntu
DriveMeca instalando y jugando Metroid 2 en Linux Ubuntu


                                           Como instalar Clamav y usarlo en Linux paso a paso
                                           4 aplicaciones Ubuntu recomendadas para tu día a día
                                           Como actualizar Linux Ubuntu MATE
                                           Como instalar Remmina en Linux Ubuntu paso a paso
                                           Como instalar Soundnode paso a paso 


Que tal eres para los videojuegos? te gustan los arcade en 2D? Fan de Metroid? Te gusto el articulo? hazme un favor, compártelo en tus redes sociales (compartir es sexy). Escríbeme en los comentarios aquí debajo y pasa la voz compartiendo el tweet.

Sígueme en twitter google+facebook o email y podrás estar enterado de todas mis publicaciones.
Disfrútenlo.

Share/Bookmark

Aprende a instalar Magento 2 y comienza a vender YA rapido

DriveMeca instalando y configurando Magento 2 en Linux Ubuntu Xenial Server
El mundo cada vez es mas pequeño al estar interconectados en todo momento. Esto también pasa en la forma en que compramos o vendemos productos (digitales, físicos, servicios, etc). Ecommerce (comercio electrónico) abre muchas posibilidades siempre que tengamos una base fuerte para manejar nuestra tienda virtual lo que nos lleva al tema del articulo de hoy donde te mostrare paso a paso, en español y con screenshoots como instalar y configurar Magento 2.0.4.
Magento podemos decir que es conocido por ser muy estable y poderoso para manejar grandes catálogos de productos sin ningún problema. Ahora, no es muy sencillo de instalar y configurar como otras soluciones en el medio llevando a muchos a pensarlo varias veces antes de decidirse por el (imagino que por eso me estas leyendo ahora, cierto?).


Requerimientos para instalar Magento en Linux Ubuntu Xenial Server




-Abrimos una consola de texto e instalamos dependencias. Usaremos una configuracion LEMP (Linux + Nginx + MariaDB + PHP 7)
sudo apt install php mariadb-server varnish nginx php-curl php-dom php-xsl php-intl php-mbstring php-zip php-simplexml php-gd php-mcrypt php-mysql


Configuramos MariaDB para Magento 2

-Aseguramos la configuracion de nuestro MariaDB colocandole contraseña a la cuenta root. Los valores por default son suficientes por lo que daremos Enter en las preguntas despues de crear la contraseña
sudo mysql_secure_installation

-Entramos a crear la db de Magento y un usuario con privilegios
sudo mysql -u root -p
Enter password:
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 52
Server version: 10.0.25-MariaDB-0ubuntu0.16.04.1 Ubuntu 16.04

Copyright (c) 2000, 2016, Oracle, MariaDB Corporation Ab and others.

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

MariaDB [(none)]> create database magentodb;
Query OK, 1 row affected (0.00 sec)

MariaDB [(none)]> grant all on magentodb.* to 'musr'@'localhost' identified by 'password';
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> flush privileges;
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> exit;
Bye


Configuramos PHP 7 para Magento 2

-Los cambios para PHP 7 son minimos, solo aumentar el valor de memoria limite
sudo vi /etc/php/7.0/fpm/php.ini
memory_limit = 1024M


Configuramos Ngix para Magento 2

-Crearemos un nuevo conf por lo cual movemos el archivo default con otro nombre
sudo mv /etc/nginx/sites-available/default /etc/nginx/sites-available/default.bck

-Creamos un nuevo default. Las lineas que comienzan con el simbolo # son comentarios
sudo vi /etc/nginx/sites-available/default
# Default server configuration
#
server {
listen 127.0.0.1:8080 default_server;
listen [::]:8080 default_server;

set $MAGE_ROOT /var/www/html/magento2/;
set $MAGE_MODE developer;

# Add index.php to the list if you are using PHP
index index.html index.htm index.nginx-debian.html;

server_name _;
root $MAGE_ROOT/pub;

index index.php;
autoindex off;
charset off;

location /setup {
root $MAGE_ROOT;
location ~ ^/setup/index.php {
fastcgi_pass unix:/run/php/php7.0-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}

location ~ ^/setup/(?!pub/). {
deny all;
}

location ~ ^/setup/pub/ {
add_header X-Frame-Options "SAMEORIGIN";
}
}

location /update {
root $MAGE_ROOT;

location ~ ^/update/index.php {
fastcgi_split_path_info ^(/update/index.php)(/.+)$;
fastcgi_pass unix:/run/php/php7.0-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
include fastcgi_params;
}

# deny everything but index.php
location ~ ^/update/(?!pub/). {
deny all;
}

location ~ ^/update/pub/ {
add_header X-Frame-Options "SAMEORIGIN";
}
}

location / {
try_files $uri $uri/ /index.php?$args;
}

location /pub {
location ~ ^/pub/media/(downloadable|customer|import|theme_customization/.*\.xml) {
deny all;
}
alias $MAGE_ROOT/pub;
add_header X-Frame-Options "SAMEORIGIN";
}

location /static/ {
if ($MAGE_MODE = "production") {
expires max;
}

# Remove signature of the static files that is used to overcome the browser cache
location ~ ^/static/version {
rewrite ^/static/(version\d*/)?(.*)$ /static/$2 last;
}

location ~* \.(ico|jpg|jpeg|png|gif|svg|js|css|swf|eot|ttf|otf|woff|woff2)$ {
add_header Cache-Control "public";
add_header X-Frame-Options "SAMEORIGIN";
expires +1y;

if (!-f $request_filename) {
rewrite ^/static/(version\d*/)?(.*)$ /static.php?resource=$2 last;
}
}
location ~* \.(zip|gz|gzip|bz2|csv|xml)$ {
add_header Cache-Control "no-store";
add_header X-Frame-Options "SAMEORIGIN";
expires off;

if (!-f $request_filename) {
rewrite ^/static/(version\d*/)?(.*)$ /static.php?resource=$2 last;
}
}
if (!-f $request_filename) {
rewrite ^/static/(version\d*/)?(.*)$ /static.php?resource=$2 last;
}
add_header X-Frame-Options "SAMEORIGIN";
}

location /media/ {
try_files $uri $uri/ /get.php?$args;

location ~ ^/media/theme_customization/.*\.xml {
deny all;
}

location ~* \.(ico|jpg|jpeg|png|gif|svg|js|css|swf|eot|ttf|otf|woff|woff2)$ {
add_header Cache-Control "public";
add_header X-Frame-Options "SAMEORIGIN";
expires +1y;
try_files $uri $uri/ /get.php?$args;
}
location ~* \.(zip|gz|gzip|bz2|csv|xml)$ {
add_header Cache-Control "no-store";
add_header X-Frame-Options "SAMEORIGIN";
expires off;
try_files $uri $uri/ /get.php?$args;
}
add_header X-Frame-Options "SAMEORIGIN";
}

location /media/customer/ {
deny all;
}

location /media/downloadable/ {
deny all;
}

location /media/import/ {
deny all;
}

location ~ (index|get|static|report|404|503)\.php$ {
try_files $uri =404;
fastcgi_pass unix:/run/php/php7.0-fpm.sock;
fastcgi_buffers 1024 4k;

fastcgi_param PHP_FLAG "session.auto_start=off \n suhosin.session.cryptua=off";
fastcgi_param PHP_VALUE "memory_limit=768M \n max_execution_time=600";
fastcgi_read_timeout 600s;
fastcgi_connect_timeout 600s;
fastcgi_param MAGE_MODE $MAGE_MODE;

fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}

gzip on;
gzip_disable "msie6";

gzip_comp_level 6;
gzip_min_length 1100;
gzip_proxied any;
gzip_types
text/plain
text/css
text/js
text/xml
text/javascript
application/javascript
application/x-javascript
application/json
application/xml
application/xml+rss;

location ~ \.php$ {
deny all;
}
}


Configuramos Varnish para Magento 2

-Varnish es un acelerador web cuya función básicamente es servir paginas estáticas guardadas en cache y solo dejar que el servidor web maneje las solicitudes de paginas dinámicas. Esto es muy importante para servidores web con altas cargas y ayudara a que tu tienda online no sufra de lentitud. Copiamos el script de inicio para que sea manejado por systemd
sudo cp /lib/systemd/system/varnish.service /etc/systemd/system/

-Modificamos el script cambiando el puerto y la cantidad de memoria usada por Varnish
sudo vi /etc/systemd/system/varnish.service
ExecStart=/usr/sbin/varnishd -j unix,user=vcache -F -a :80 -T localhost:6082 -f /etc/varnish/default.vcl -S /etc/varnish/secret -s malloc,1024m

-Activamos Nginx para que sea ejecutado cada vez que prendamos el equipo e iniciamos el servicio
sudo systemctl enable nginx
sudo systemctl restart nginx

-Verificamos este ejecutandose
sudo systemctl status nginx
● nginx.service - A high performance web server and a reverse proxy server
   Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
   Active: active (running) since sáb 2016-08-06 16:24:32 COT; 5s ago
  Process: 20848 ExecStop=/sbin/start-stop-daemon --quiet --stop --retry QUIT/5 --pidfile /run/nginx.pid (code=exited, status=0/SUCCESS)
  Process: 20856 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
  Process: 20852 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
 Main PID: 20859 (nginx)
    Tasks: 3
   Memory: 2.8M
      CPU: 103ms
   CGroup: /system.slice/nginx.service
           ├─20859 nginx: master process /usr/sbin/nginx -g daemon on; master_process on
           ├─20860 nginx: worker process                           
           └─20861 nginx: worker process                           

ago 06 16:24:32 ubuser systemd[1]: Starting A high performance web server and a reverse proxy server...
ago 06 16:24:32 ubuser systemd[1]: Started A high performance web server and a reverse proxy server.

-Activamos Varnish y lo ejecutamos
sudo  systemctl enable varnish
sudo  systemctl restart varnish

-Verificamos este ejecutandose
sudo  systemctl status varnish
● varnish.service - Varnish HTTP accelerator
   Loaded: loaded (/etc/systemd/system/varnish.service; enabled; vendor preset: enabled)
   Active: active (running) since sáb 2016-08-06 16:28:03 COT; 44s ago
     Docs: https://www.varnish-cache.org/docs/4.1/
           man:varnishd
 Main PID: 20920 (varnishd)
   CGroup: /system.slice/varnish.service
           ├─20920 /usr/sbin/varnishd -j unix,user=vcache -F -a :80 -T localhost:6082 -f /etc/varnish/default.vcl -S /etc/varnish/secret -s malloc,102
           └─20931 /usr/sbin/varnishd -j unix,user=vcache -F -a :80 -T localhost:6082 -f /etc/varnish/default.vcl -S /etc/varnish/secret -s malloc,102

ago 06 16:28:03 ubuser systemd[1]: Started Varnish HTTP accelerator.
ago 06 16:28:05 ubuser varnishd[20920]: Debug: Platform: Linux,4.4.0-31-generic,x86_64,-junix,-smalloc,-smalloc,-hcritbit
ago 06 16:28:05 ubuser varnishd[20920]: Platform: Linux,4.4.0-31-generic,x86_64,-junix,-smalloc,-smalloc,-hcritbit
ago 06 16:28:05 ubuser varnishd[20920]: Debug: Child (20931) Started
ago 06 16:28:05 ubuser varnishd[20920]: Child (20931) Started
ago 06 16:28:05 ubuser varnishd[20920]: Info: Child (20931) said Child starts
ago 06 16:28:05 ubuser varnishd[20920]: Child (20931) said Child starts

-Activamos y ejecutamos el servicio php7.0-fpm
sudo systemctl enable php7.0-fpm
sudo systemctl restart php7.0-fpm

-Verificamos este ejecutandose correctamente
sudo systemctl status php7.0-fpm
● php7.0-fpm.service - The PHP 7.0 FastCGI Process Manager
   Loaded: loaded (/lib/systemd/system/php7.0-fpm.service; enabled; vendor preset: enabled)
   Active: active (running) since sáb 2016-08-06 16:30:28 COT; 17s ago
  Process: 21241 ExecStartPre=/usr/lib/php/php7.0-fpm-checkconf (code=exited, status=0/SUCCESS)
 Main PID: 21254 (php-fpm7.0)
   Status: "Processes active: 0, idle: 2, Requests: 0, slow: 0, Traffic: 0req/sec"
    Tasks: 3
   Memory: 31.6M
      CPU: 128ms
   CGroup: /system.slice/php7.0-fpm.service
           ├─21254 php-fpm: master process (/etc/php/7.0/fpm/php-fpm.conf)                      
           ├─21256 php-fpm: pool www                                                            
           └─21257 php-fpm: pool www                                                            

ago 06 16:30:27 ubuser systemd[1]: Starting The PHP 7.0 FastCGI Process Manager...
ago 06 16:30:28 ubuser systemd[1]: Started The PHP 7.0 FastCGI Process Manager.


Descargamos Magento 2 en Linux Ubuntu Xenial Server

-Nos cambiamos al directorio web y descargamos Magento 2 en su ultima versión (2.0.4 en este momento) desde el repositorio Git Magento
cd /var/www/html/
sudo git clone https://github.com/magento/magento2.git
Clonar en «magento2»...
remote: Counting objects: 1172366, done.
remote: Compressing objects: 100% (2673/2673), done.
remote: Total 1172366 (delta 1710), reused 0 (delta 0), pack-reused 1169110
Receiving objects: 100% (1172366/1172366), 286.43 MiB | 603.00 KiB/s, done.
Resolving deltas: 100% (649048/649048), done.
Comprobando la conectividad… hecho.
Extrayendo archivos: 100% (24989/24989), done.

-Entramos al directorio de Magento y continuamos
cd magento2/
sudo git checkout tags/2.0.4
Extrayendo archivos: 100% (12380/12380), done.
Note: checking out 'tags/2.0.4'.

You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by performing another checkout.

If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -b with the checkout command again. Example:

  git checkout -b <new-branch-name>

HEAD se encuentra en b6bb8e5... MAGETWO-48486: Magento 2.0.4 Publication

-Damos permiso total en la carpeta magento2 y reiniciamos los servicios nginx y php7.0-fpm
sudo chmod -R 777 /var/www/html/magento2/
sudo systemctl restart nginx
sudo systemctl restart php7.0-fpm

-Este paso es importante. Abrimos un browser y navegamos a https://www.magentocommerce.com/ Allí creamos una cuenta (es GRATIS) y generamos una llave publica y privada que se nos pedirá en un paso mas adelante. Menú Connect - Secure Keys. Damos click al botón Generate new, escribimos un nombre y se nos mostrara la llave publica junto a la privada
DriveMeca instalando y configurando Magento 2 en Linux Ubuntu Xenial Server

-Instalamos módulos para Magento teniendo cuidado cuando llegue a pedirnos un usuario y contraseña para el repositorio de Magento. Alli debemos pegar en Username nuestra llave publica y en Password la llave privada (la llave privada no se vera cuando la pegues). Aceptamos guardar las credenciales en el directorio del usuario desde el que estamos instalando
sudo composer install
Loading composer repositories with package information
Installing dependencies (including require-dev) from lock file
  - Installing magento/magento-composer-installer (0.1.6)
    Downloading: 100%         

  - Installing braintree/braintree_php (2.39.0)
    Downloading: 100%         

  - Installing justinrainbow/json-schema (1.6.1)
    Downloading: 100%         

  - Installing symfony/console (v2.6.13)
    Downloading: 100%         

  - Installing symfony/process (v2.8.4)
    Downloading: 100%         

  - Installing symfony/finder (v2.8.4)
    Downloading: 100%         

  - Installing seld/jsonlint (1.4.0)
    Downloading: 100%         

  - Installing composer/composer (1.0.0-alpha10)
    Downloading: 100%         

  - Installing magento/composer (1.0.2)
    Authentication required (repo.magento.com):
      Username: 78605c946e18190ec0f7xxxxxxef5xxxx <---Llave publica
      Password: <-- Llave privada
    Downloading: 100%         
Do you want to store credentials for repo.magento.com in /home/drivemeca/.composer/auth.json ? [Yn] 

  - Installing magento/zendframework1 (1.12.16)
    Downloading: 100%         

  - Installing psr/log (1.0.0)
    Downloading: 100%         

  - Installing monolog/monolog (1.16.0)
    Downloading: 100%         

  - Installing oyejorge/less.php (v1.7.0.3)
    Downloading: 100%         

  - Installing pelago/emogrifier (v0.1.1)
    Downloading: 100%         

  - Installing phpseclib/phpseclib (0.3.10)
    Downloading: 100%         

  - Installing tedivm/jshrink (v1.0.1)
    Downloading: 100%         

  - Installing tubalmartin/cssmin (v2.4.8-p4)
    Downloading: 100%         

  - Installing zendframework/zend-stdlib (2.4.9)
    Downloading: 100%         

  - Installing zendframework/zend-config (2.4.9)
    Downloading: 100%         

  - Installing zendframework/zend-console (2.4.9)
    Downloading: 100%         

  - Installing zendframework/zend-servicemanager (2.4.9)
    Downloading: 100%         

  - Installing zendframework/zend-math (2.4.9)
    Downloading: 100%         

  - Installing zendframework/zend-crypt (2.4.9)
    Downloading: 100%         

  - Installing zendframework/zend-eventmanager (2.4.9)
    Downloading: 100%         

  - Installing zendframework/zend-code (2.4.9)
    Downloading: 100%         

  - Installing zendframework/zend-di (2.4.9)
    Downloading: 100%         

  - Installing zendframework/zend-validator (2.4.9)
    Downloading: 100%         

  - Installing zendframework/zend-escaper (2.4.9)
    Downloading: 100%         

  - Installing zendframework/zend-uri (2.4.9)
    Downloading: 100%         

  - Installing zendframework/zend-loader (2.4.9)
    Downloading: 100%         

  - Installing zendframework/zend-http (2.4.9)
    Downloading: 100%         

  - Installing zendframework/zend-i18n (2.4.9)
    Downloading: 100%         

  - Installing zendframework/zend-filter (2.4.9)
    Downloading: 100%         

  - Installing zendframework/zend-inputfilter (2.4.9)
    Downloading: 100%         

  - Installing zendframework/zend-log (2.4.9)
    Downloading: 100%         

  - Installing zendframework/zend-modulemanager (2.4.9)
    Downloading: 100%         

  - Installing zendframework/zend-form (2.4.9)
    Downloading: 100%         

  - Installing zendframework/zend-mvc (2.4.9)
    Downloading: 100%         

  - Installing zendframework/zend-json (2.4.9)
    Downloading: 100%         

  - Installing zendframework/zend-serializer (2.4.9)
    Downloading: 100%         

  - Installing zendframework/zend-server (2.4.9)
    Downloading: 100%         

  - Installing zendframework/zend-soap (2.4.9)
    Downloading: 100%         

  - Installing zendframework/zend-text (2.4.9)
    Downloading: 100%         

  - Installing zendframework/zend-view (2.4.9)
    Downloading: 100%         

  - Installing symfony/stopwatch (v3.0.4)
    Downloading: 100%         

  - Installing symfony/filesystem (v2.8.4)
    Downloading: 100%         

  - Installing symfony/event-dispatcher (v2.8.4)
    Downloading: 100%         

  - Installing sebastian/diff (1.4.1)
    Downloading: 100%         

  - Installing fabpot/php-cs-fixer (v1.11.2)
    Downloading: 100%         

  - Installing lusitanian/oauth (v0.7.0)
    Downloading: 100%         

  - Installing symfony/dependency-injection (v2.8.4)
    Downloading: 100%         

  - Installing symfony/config (v2.8.4)
    Downloading: 100%         

  - Installing pdepend/pdepend (2.2.2)
    Downloading: 100%         

  - Installing phpmd/phpmd (2.3.3)
    Downloading: 100%         

  - Installing phpunit/php-token-stream (1.4.8)
    Downloading: 100%         

  - Installing symfony/yaml (v2.8.4)
    Downloading: 100%         

  - Installing sebastian/version (1.0.6)
    Downloading: 100%         

  - Installing sebastian/recursion-context (1.0.2)
    Downloading: 100%         

  - Installing sebastian/exporter (1.2.1)
    Downloading: 100%         

  - Installing sebastian/environment (1.3.5)
    Downloading: 100%         

  - Installing sebastian/comparator (1.2.0)
    Downloading: 100%         

  - Installing phpunit/php-text-template (1.2.1)
    Downloading: 100%         

  - Installing doctrine/instantiator (1.0.5)
    Downloading: 100%         

  - Installing phpunit/phpunit-mock-objects (2.3.8)
    Downloading: 100%         

  - Installing phpunit/php-timer (1.0.7)
    Downloading: 100%         

  - Installing phpunit/php-file-iterator (1.3.4)
    Downloading: 100%         

  - Installing phpunit/php-code-coverage (2.2.4)
    Downloading: 100%         

  - Installing phpunit/phpunit (4.1.0)
    Downloading: 100%         

  - Installing league/climate (2.6.1)
    Downloading: 100%         

  - Installing sjparkinson/static-review (4.1.1)
    Downloading: 100%         

  - Installing squizlabs/php_codesniffer (1.5.3)
    Downloading: 100%         

..
..


-Cambiamos permisos
sudo chmod -R 755 /var/www/html/magento2/
sudo chmod -R 777 /var/www/html/magento2/var/
sudo chmod -R 777 /var/www/html/magento2/pub/
sudo chmod -R 777 /var/www/html/magento2/app/etc/


Instalamos Magento 2 en Linux Ubuntu 16.04 Server

-Abrimos un navegador y nos vamos al URL http://ip-servidor/setup/ Se nos pedirá aceptar la licencia. Damos click al botón Agree and Setup Magento
DriveMeca instalando y configurando Magento 2 en Linux Ubuntu Xenial Server

-La instalación de Magento 2 consta de 6 pasos. El primero verificara si tenemos correctamente instalado y configurado PHP. Damos click al botón Start Readiness Check
DriveMeca instalando y configurando Magento 2 en Linux Ubuntu Xenial Server

-Si haz seguido mis pasos todo debe darte en verde, sino, verifica el error, corrige y vuelve a chequear dando click al botón Try Again. Damos click al botón Next para continuar al paso 2
DriveMeca instalando y configurando Magento 2 en Linux Ubuntu Xenial Server

-El paso 2 es configurar la conexión a MariaDB con los datos Database Server Host (localhost), Database Server Username (musr), Database Server Password (password de la db) y Database Name (magentodb). Damos click al botón Next para continuar al paso 3
DriveMeca instalando y configurando Magento 2 en Linux Ubuntu Xenial Server

-El paso 3 nos permite activar el dominio internet por el que se conectaran a nuestro Magento ecommerce (por motivos de este articulo paso a paso usaremos la ip privada del servidor). El instalador generara un URL para servir de entrada al administrador al backend (modulo web administrativo)
DriveMeca instalando y configurando Magento 2 en Linux Ubuntu Xenial Server

-En Advanced Options, mas abajo, podemos activar un certificado SSL en caso de tenerlo entre otras opciones. Damos click al botón Next para continuar al paso 4
DriveMeca instalando y configurando Magento 2 en Linux Ubuntu Xenial Server

-En el 4to paso elegimos nuestra zona horaria, la moneda y el idioma por default de nuestra tienda en linea. Por default se instalaran todos los módulos. Damos click al botón Next para continuar al paso 5
DriveMeca instalando y configurando Magento 2 en Linux Ubuntu Xenial Server

-El 5to paso de la instalación es crear una cuenta de administrador. Esta sera la encargada de crear usuarios, crear paginas, categorías, productos, etc. Damos click al botón Next para continuar al paso 6
DriveMeca instalando y configurando Magento 2 en Linux Ubuntu Xenial Server

-Si llegaste hasta el 6to paso ya estas listo para instalar Magento 2 en Linux Ubuntu Server. Damos click al botón Install Now. Hora de ir por un café ;-)
DriveMeca instalando y configurando Magento 2 en Linux Ubuntu Xenial Server

-Comienza la instalación, podemos darle click a Console Log para ver en que va el proceso
DriveMeca instalando y configurando Magento 2 en Linux Ubuntu Xenial Server

-Dependiendo la potencia de tu equipo, puede que pasen una buena cantidad de minutos hasta que llegue al 100% de instalado. Ya podemos abrir una pestaña en nuestro navegador internet e ir al URL del administrador mostrado al final del log
DriveMeca instalando y configurando Magento 2 en Linux Ubuntu Xenial Server

-Entramos con la cuenta de administrador creada en pasos anteriores
DriveMeca instalando y configurando Magento 2 en Linux Ubuntu Xenial Server

-Y ya estamos en la consola o backend de Magento 2. A partir de aquí podemos crear categorías, cambiar el idioma de la tienda, políticas de precios, etc
DriveMeca instalando y configurando Magento 2 en Linux Ubuntu Xenial Server


Creamos tareas Cron para Magento 2 en Linux Ubuntu Xenial

-Muy importante (y es la razon del mensaje mostrado en la esquina superior derecha del backend) es crear las tareas de cron
sudo crontab -e
*/1 * * * * www-data php /var/www/html/magento2/bin/magento cron:run
*/1 * * * * www-data php /var/www/html/magento2/update/cron.php
*/1 * * * * www-data php /var/www/html/magento2/bin/magento setup:cron:run

-Reiniciamos el servicio de cron para que tome los cambios
sudo systemctl restart cron

-Esta es nuestra tienda en linea creada con Magento 2, muy básica, ciertamente, pero en ti esta agrandarla
DriveMeca instalando y configurando Magento 2 en Linux Ubuntu Xenial Server


Artículos recomendadosComo instalar Nextcloud en Linux Centos / Ubuntu Server
                                           Como instalar Clamav y usarlo en Linux paso a paso
                                           Como instalar Wine en Ubuntu
                                           Como activar los efectos de capas de Gimp en Ubuntu
                                           Como crear una imagen transparente en Gimp
                                           Como instalar MySQL Workbench en Linux Ubuntu paso a paso


Ya estamos listos para organizar nuestra tienda en linea y quien sabe, a lo mejor ser el próximo Amazon. Te gusto el articulo? hazme un favor, compártelo en tus redes sociales (compartir es sexy). Escríbeme en los comentarios aquí debajo y pasa la voz compartiendo el tweet.
Sígueme en twitter google+facebook o email y podrás estar enterado de todas mis publicaciones.
Disfrútenlo.

Share/Bookmark