mayo 18, 2017

Google AMP Tutorial

El AMP HTML es el código creado por Google que permite a las webs crear versiones ligeras de sites estándar. La idea es conseguir que las páginas con gran cantidad de contenido como vídeos, gráficos y publicidad carguen hasta cuatro veces más rápido. Además de que el mismo código funcione en diferentes plataformas y dispositivos.
Para conseguir el sello AMP hay que crear una versión mobile ligera implementando el código AMP de Google en el site. Puedes conseguirlo en este enlace.

Todas las webs con AMP integrado almacenarán su contenido en la caché a través de la nube. Así toda la información estará contenida en un único lugar donde Google irá a buscar sin tener que rastrear más de un servidor.

Por eso es importante tener en cuenta que en la versión “acelerada” de las webs con AMP se elimina todo elemento que no sea el contenido del artículo: no aparece publicidad ni nada que pueda incrementar el tiempo de carga.


septiembre 07, 2016

Manejo básico de sesiones con PHP



Gracias w3Schools


Exactamente para qué nos sirve una sesión? o como la deberíamos utilizar de manera correcta y para ello imaginemos el siguiente escenario.


Cuando se trabaja con una aplicación, se abre, hace algunos cambios y luego se cierra. Esto es muy parecido a una sesión. El equipo sabe quién eres. Se sabe cuando se inicia la aplicación y cuando se termina.


Bonito no? pero eso es en un equipo en donde básicamente tienes el control de todo pero y qué pasa cuando nos referimos al servidor? en Internet hay un problema: el servidor web no sabe quién eres o lo que haces, porque la dirección HTTP no mantiene estado.


Las variables de sesión resolver este problema mediante el almacenamiento de la información del usuario a utilizar en varias páginas (por ejemplo, nombre de usuario, color preferido, etc). Por defecto, las variables de sesión duran hasta que el usuario cierra el navegador.


Así que; Las variables de sesión contienen información acerca de un solo usuario, y están disponibles para todas las páginas en una sola aplicación.


Pero pasemos a PHP crear una sesión es tan simple como esto

  1. session_start();
  2. session_unset();
  3. ?>
Recuerda que no son enchiladas así que bueno si ya tenemos nuestra sesión iniciada te preguntaras y como guardo los datos o donde obtengo la información, pues bueno para ello existe una variable global llamada $_SESSION, por lo que tendríamos algo así

  1. session_start();
  2. $_SESSION["color"] = "green";
  3. $_SESSION["animal"] = "cat";
  4. echo "Listo ya asignamos nuestras variables de sesion";
  5. ?>


Nota: La función session_start () debe ser la primera cosa en su documento. Antes de cualquier etiqueta HTML.


Y bueno pero y como recuperamos los valores o como sabemos que es lo que tiene cada una de ellas en caso de requerir la información

  1. session_start();
  2. echo "Color favorito " . $_SESSION["color"] . ".
    "
    ;
  3. echo "Animal favorito " . $_SESSION["animal"] . ".";
  4. ?>
Ahora bien una de las ventajas que tiene la variable global $_SESSION es que esta puede ser tratada como un array lo cual es una ventaja sobre todo al momento de buscar errores y para ver todo lo que contiene podemos hacer uso del siguiente método


  1. session_start();
  2. echo '
    '
    ;
  3. print_r($_SESSION);
  4. echo '
';
  • ?>
  • Sobre escribir un valor en nuestra sesión es tan simple como hacer esto
    1. session_start();
    2. $_SESSION["color"] = "yellow";
    3. print_r($_SESSION);
    4. ?>

    Pues bien ya solo nos resta eliminar el contenido de la misma para para ello tenemos 2 funciones que básicamente funcionan igual pero no hacen lo mismo y estas son session_unset(); y session_destroy();


    Y a que nos referimos con esto pues bueno session_unset() libera todas las variables de sesión actualmente registradas mientras que session_destroy() destruye toda la información asociada con la sesión actual. No destruye ninguna de las variables globales asociadas con la sesión, ni destruye la cookie de sesión. Para volver a utilizar las variables de sesión se debe llamar a session_start().


    y para usarlas pues es solo tenemos que hacer lo siguiente en el caso de session_unset()

    1. session_start();
    2. session_unset();
    3. ?>
    Y en el caso de session_destroy()
    1. session_start();
    2. session_destroy();
    3. ?>
    Recuerda si te ha gustado el post no olvides compartirlo y sobre todo no olvides dejar los comentarios que siempre son lo mas importarte para nosotros

    noviembre 28, 2015

    Apache Tomcat seguro



    Programas necesarios
    1.     Java JRE
    2.     Tomcat 7.0
    Creacion del keystore


    ¿Qué es un keystore?
    Es un "contenedor" de los certificados de seguridad para uso del servidor java , en este caso tomcat 7.0 ,es decir , un archivo que va a servir para guardar los certificado que usa el servidor web a la hora de usar el protocolo HTTPS.

    Para habilitar el uso de conexiones seguras por el protocolo https en tomcat seguiremos los siguientes pasos:
    Primero procederemos a crear el denominado keystore de certificados para tomcat , es decir , el almacén de claves donde se encuentran los certificados que va a usar nuestro servidor.

    Para ello al estar tomcat programado en java, podemos usar una herramienta contenida en el JDK de java,esta herramienta es la keytool.

    Crearemos el keystore de la siguiente forma.


    1.     Abrimos el cmd
    2.     Introducimos el comando

    %JAVA_HOME%\bin\keytool -genkey -alias tomcat -keyalg RSA -keystore \path\to\my\keystore
    (Java home es la ruta donde está instalado java)
    *Si no sabemos o no queremos usar java home haremos lo que sigue


    1.     Abrimos el cmd.
    2.     Vamos abriendo los directorios hasta conseguir (Usando cd ..):
    C:\>
    C:\>cd "Archivos de programa"
    C:\Archivos de programa>cd Java
    C:\Archivos de programa\Java>cd jre7
    C:\Archivos de programa\Java\jre7>cd bin
    Una vez en bin introducimos el comando para crear el keystore

    C:\Archivos de programa\Java\jre7\bin> keytool -genkey -alias tomcat -keyalg RSA
    -keystore \path\to\my\keystore\nombreArchivoKeystore
    -keystore – Sirve para indicar la ruta donde se creara el archivo

    Es importante fijarse bien y que la ruta donde se va a guardar el archivo exista , en el ejemplo la carpeta key hay que crearla si queremos que se guarde en ella.

    C:\Archivos de programa\Java\jre7\bin> keytool -genkey -alias tomcat \
    -keyalg RSA -keystore "C:\Archivos de programa\Apache Software Foundation\Tomcat 7.0\key\llave"
    Introduzca la contrase±a del almacen de claves:
    Volver a escribir la contraseña nueva:
    ┐Cuales son su nombre y su apellido?
      [Unknown]:  entidad
    ┐Cual es el nombre de su unidad de organizacion?
      [Unknown]:  organizacion
    ┐Cual es el nombre de su organizacion?
      [Unknown]:  organizacion
    ┐Cual es el nombre de su ciudad o localidad?
      [Unknown]:  se
    ┐Cual es el nombre de su estado o provincia?
      [Unknown]:  se
    ┐Cual es el codigo de pais de dos letras de la unidad?
      [Unknown]:  Es
    ┐Es correcto CN=entidad, OU=organizacion, O=organizacion, L=se, ST=se, C=Es?
      [no]:  si


    Es muy importante que en el ultimo paso pulsemos enter y no cambiemos la contraseña , si no hacemos esto java lanzara una excepción y el archivo keystore no se creara.

    Introduzca la contraseña de clave para
            (INTRO si es la misma contraseña que la del almacen de claves):
    Una vez ejecutado este comando se creara un archivo en la ruta especificada, en este caso en la carpeta key se creara un archivo llave.

    Este archivo keystore ya contiene un certificado autofirmado para usar en el servidor.


    Habilitar ssl en el Tomcat

    Para habilitar SSL en tomcat usando la configuración JSSE debemos modificar el conector en el archivo server.xml

    El archivo server.xml esta en la ruta

    C:\Archivos de programa\Apache Software Foundation\Tomcat 7.0\conf


    Como vamos a usar el certificado autofirmado incluido en el keystore creado y como en este tutorial no tenemos la librería APR , el conector usara la configuración JSSE, como podremos ver al ir al archivo server.xml.

    Dentro de este archivo debemos buscar las siguentes lineas , que indican la configuracion actual del conector para el puerto 8443

    Y debemos modificar el conector para que quede de la siguiente forma,cambiando los parametros de keystoreFile por la ruta donde se encuentra el archivo creado anteriormente y el keystorePass ,que no es otra que la contraseña que le pusimos al archivo keystore.

    port="8443" SSLEnabled="true" maxThreads="200"
    scheme="https" secure="true"
    keystoreFile="ruta archivo keystore"
    keystorePass="contraseña keystore" clientAuth="false"
    sslProtocol="TLS" />
    Después de esto guardamos y reiniciamos el tomcat y nos vamos al navegador que no sea chrome por ejemplo firefox y ponemos la dirección:

    https://direccion_servidor:8443/

    nos saldrá que el certificado del servidor no es seguro , procedemos hacer click en entender los riesgos y añadirlo como excepción de seguridad.

    Aun así nos seguirá apareciendo el https tachado y tendremos que confiar en el certificado, para ello pulsamos en entiendo los riegos y añadir excepción de seguridad , y ya aparecerá la pagina sin ninguno problema.


    Referencia: https://csi2altair.wikispaces.com/Apache+Tomcat+seguro



    enero 31, 2015

    Instalar phpMyAdmin en Centos por Consola.


    Listamos los paquetes para verificar la disponibilidad de la descarga.

    #yum list phpmyadmin




    Enviamos a Instalar

    #yum install phpMyAdmin


    Luego iniciamos el servidor web  Apache

    #service httpd start

    Verificamos is el servicio esta levantado en el navegador

    http://127.0.0.1/        -> desde la misma PC
    ó
    http://192.168.10.180/   -> desde la otra PC del mismo segmento de Red.


    Si tiene  problemas con el acceso desde otra PC puede ser por los permisos de acceso.

    Ejecutamos el siguiente comando en la consola para el acceso.
    #iptable -I INPUT 4 -m state --state NEW -p tcp --dport 80 -j ACCEPT

    #service iptables save

    Volvemos a verificar el acceso en el navegador.
    http://127.0.0.1/        -> desde la misma PC
    ó
    http://192.168.10.180/   -> desde la otra PC del mismo segmento de Red.

    Configuramos el phpMyAdmin para administrar la base de datos Mysql

    #vim /etc/httpd/conf.d/phpMyAdmin.conf

    Allow from All   #añadimos esta línea y guardamos



    Verificamos que el gestor Mysql este levantado 

    http://192.168.10.180/phpMyAdmin/index.php





    enero 28, 2015

    Configuración de Red LAN en Centos 6.4

    Pasos para configurar la IP de la PC en Centos Linux

    1. Verificamos la la configuración de la IP con el siguiente comando:
          #ifconfig -a
         eth0      Link encap:Ethernet  HWaddr 00:0C:29:50:A6:3C
                   inet addr:0.0.0.0  Bcast:0.0.0.0  Mask:0.0.0.0
                   inet6 addr: fe80::20c:29ff:fe50:a63c/64 Scope:Link
                   UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
                   RX packets:468 errors:0 dropped:0 overruns:0 frame:0
                   TX packets:219 errors:0 dropped:0 overruns:0 carrier:0
                   collisions:0 txqueuelen:1000
                   RX bytes:79709 (77.8 KiB)  TX bytes:35821 (34.9 KiB)
                   Interrupt:19 Base address:0x2000

        lo            Link encap:Local Loopback
                   inet addr:127.0.0.1  Mask:255.0.0.0
                   inet6 addr: ::1/128 Scope:Host
                   UP LOOPBACK RUNNING  MTU:16436  Metric:1
                   RX packets:0 errors:0 dropped:0 overruns:0 frame:0
                  TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
                  collisions:0 txqueuelen:0
                  RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)

    2 Escogemos al opción eth0 para la configuración de la RED
           #vi /etc/sysconfig/network-scripts/ifcfg-eth0

    3 Comenzamos a modificar los cambios
         DEVICE=eth0
         HWADDR=00:0C:29:50:A6:3C
         TYPE=Ethernet
         UUID=8f6f3086-529b-4570-95cc-ee69c5df31a0
         ONBOOT=yes
         NM_CONTROLLED=yes
         BOOTPROTO=none
         IPADDR=192.168.43.22
         NETMASK=255.255.255.0
         GATEWAY=192.168.43.21
         DNS1=192.168.43.1

    4 Reiniciamos el servicio de red y listo
           #service network restart

    5 Verificamos la configuración 
         #ifconfig -a

    eth0      Link encap:Ethernet  HWaddr 00:0C:29:50:A6:3C
              inet addr:192.168.43.22  Bcast:192.168.43.255  Mask:255.255.255.0
              inet6 addr: fe80::20c:29ff:fe50:a63c/64 Scope:Link
              UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
              RX packets:1059 errors:0 dropped:0 overruns:0 frame:0
              TX packets:383 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:1000
              RX bytes:212997 (208.0 KiB)  TX bytes:62425 (60.9 KiB)
              Interrupt:19 Base address:0x2000

    lo        Link encap:Local Loopback
              inet addr:127.0.0.1  Mask:255.0.0.0
              inet6 addr: ::1/128 Scope:Host
              UP LOOPBACK RUNNING  MTU:16436  Metric:1
              RX packets:19 errors:0 dropped:0 overruns:0 frame:0
              TX packets:19 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:0
              RX bytes:2624 (2.5 KiB)  TX bytes:2624 (2.5 KiB)

    6 Realizamos un ping

    # ping 192.168.43.22
    PING 192.168.43.22 (192.168.43.22) 56(84) bytes of data.
    64 bytes from 192.168.43.22: icmp_seq=1 ttl=64 time=0.048 ms
    64 bytes from 192.168.43.22: icmp_seq=2 ttl=64 time=0.055 ms
    64 bytes from 192.168.43.22: icmp_seq=3 ttl=64 time=0.058 ms
    64 bytes from 192.168.43.22: icmp_seq=4 ttl=64 time=0.054 ms


    marzo 09, 2014

    Configuracion de Jboss en Windows

    ¿Qué es JBOSS?



    JBoss es un servidor de aplicaciones J2EE de código abierto implementado en Java puro. Al estar basado en Java, JBoss puede ser utilizado en cualquier sistema operativo que lo soporte. Los principales desarrolladores trabajan para una empresa de servicios, JBoss Inc., adquirida por Red Hat en Abril del 2006, fundada por Marc Fleury, el creador de la primera versión de JBoss. El proyecto está apoyado por una red mundial de colaboradores. Los ingresos de la empresa están basados en un modelo de negocio de servicios.


    Las características destacadas de JBoss incluyen:

    • Producto de licencia de código abierto sin coste adicional. 
    • Cumple los estándares. 
    • Confiable a nivel de empresa 
    • Incrustable, orientado a arquitectura de servicios. 
    • Flexibilidad consistente 
    • Servicios del middleware para cualquier objeto de Java 
    • Ayuda profesional 24x7 de la fuente 
    • Soporte completo para JMX 


    ¿Como instalar JBoss en Windows?

    1. Descargar Jboss de http://www.jboss.org/jbossas/downloads/ (viene en zipeado). 
    2. Descargar JDK de http://www.oracle.com/technetwork/java/javase/downloads/index.html (solo el jdk). 
    3. Instalar el JDK. 
    4. Descomprimir el archivo zip de jboss en la raiz del disco duro.
    5. Ir a la carpeta donde descomprimimos el zip de JBoss e ingresar a la carpeta bin. 
    6. En la carpeta bin ejecutar el archivo standalone.bat ó run.bat (dependiendo de la version descargada). 
    7. Luego que se termine de ejecutar el sript del archivo .bat (no cerramos la ventana de DOS que se abre), probamos que el servicio este arriba cn cualquier navegador (Mozilla Firefox, Internet Explorer, etc). 
    8. En el navegador digitamos en la barra de direcciones localhost:8080.