Autenticación al ingresar a una página Web con Apache

martes, 21 de julio de 2015
Posted by Unknown

AUTENTICACIÓN AL INGRESAR A UNA PÁGINA WEB CON APACHE






Se va a colocar un mecanismo de autenticación al momento de ingresar a una página web, esta opción es posible gracias al servidor web Apache.
Primero se debe crear el archivo “.htpasswd”, este archivo contiene los nombres de usuario y contraseñas válidas, se lo debe crear en un directorio que no sea del servidor apache.
Nos pedirá que coloquemos la contraseña para el usuario creado.



Después se realiza la configuración del siguiente archivo:



Se añade las siguientes líneas que se encuentran dentro de <Directory > </Directory>
Y se debe ingresar la ruta del directorio que se va a proteger "var/www/html/prueba/'>"

Se debe reiniciar el servicio httpd

Ahora ingresamos a la página y se verifica que nos pide ingreso de autenticación para mostrar el contenido de la carpeta protegida.



Si se ingresa correctamente los datos de usuario mostrará la información, caso contrario dará error de autorización.




ACTUALIZAR DATOS EN UNA BASE DE DATOS MYSQL DESDE UNA PÁGINA WEB




Como se vio en el blog “Mysql + CENTOS 7 + jsp + Apache”, se puede mostrar en una página web los datos guardados en la base de datos Mysql, gracias al servidor Web Apache y la conexión a la base mediante jsp.

Ahora vamos a editar los datos que se muestran en la página web desde la misma página web.
Primero se va a crear una nueva interfaz para introducir los nuevos datos.


Se debe crear un archivo .jsp para cada una de la tablas que se desee modificar.
Se tiene que declarar las variables para la llamada de las etiquetas y conexión a la base de datos MySQL,

y configurar la sentencia para la actualización en la tabla para que se actualice los datos al momento de dar click en el botón MODIFICAR.

Finalmente nos despliega la información con la debida modificación de los datos, y adicional realizamos la  verificación en las tablas de MySQL.







ACCESO REMOTO A UN SERVIDOR DE BASES DE DATOS MYSQL EN CENTOS 7


Desde un servidor Web Apache se va a acceder a una base de datos alojada en un servidor MySQL remoto.
Primero se edita la configuración del servidor MySQL, la cual se encuentra, por en el archivo /etc/my.cnf
gedit /etc/my.cnf
Dentro del archivo de configuración localizar la línea que contiene el texto [mysqld]. Debajo de esta línea editar la variable bind-address para definir en qué dirección IP atiende el servidor MySQL.
bind-address = 172.17.36.153
Si se trata de Red Hat/Fedora/CentOS reiniciar mediante el comando:
# service restart mysqld
Stopping mysqld:                                        [  OK  ]
Starting mysqld:                                           [  OK  ]
Para conectarse a una determinada base de datos debe existir un usuario con privilegios de acceso remoto, Conectarse al servidor MySQL.
$ mysql -u root -p
Se desea permitir el acceso al usuario "root" a la base de datos "datos" desde el host remoto "172.17.36.153" utilizando la contraseña “laboratorio4”, otorgar el permiso mediante el comando GRANT de MySQL:
mysql> GRANT ALL ON datos.* TO 'root'@'172.17.36.153' IDENTIFIED BY 'laboratorio4';
Si se desea que "root" pueda acceder a la base de datos "datos" desde cualquier host, utilizar:
mysql> GRANT ALL ON datos.* TO 'root'@'*' IDENTIFIED BY 'laboratorio4';
Cerrar la sesión en el servidor MySQL:
mysql> quit
Es necesario abrir el puerto 3306 (MySQL) en el firewall del servidor de bases de datos.
# iptables -A INPUT -i eth1 -s 172.17.36.153 -p tcp --destination-port 3306 -j ACCEPT
 Finalmente guardar la configuración del firewall mediante:
# service iptables save
En los archivos de acceso a la base de datos debemos apuntar hacia la ip y base del servidor.
Finalmente se prueba el acceso desde el cliente hacia la base de datos almacenada en el servidor Mysql.


 
 
 

Mysql + CENTOS 7 + jsp + Apache

lunes, 20 de julio de 2015
Posted by Unknown



MySQL es un sistema de gestión de base de datos relacional (RDBMS) de código abierto, basado en lenguaje de consulta estructurado (SQL).


MySQL se ejecuta en prácticamente todas las plataformas, incluyendo Linux, UNIX y Windows. A pesar de que se puede utilizar en una amplia gama de aplicaciones, MySQL se asocia más con las aplicaciones basadas en la web y la publicación en línea y es un componente importante de una pila empresarial de código abierto.
Se va a realizar una conexión desde la Base de Datos MysSQL hacia Apache para poder visualizar la información en una página HTML utilizando sentencias y conexión con JSP.



INSTALACIÓN DE MySQL


Tener en cuenta que supone que no hay una versión previamente instalada de MySQL o MariaDB. Puede utilizar el siguiente comando: rpm -qa | grep -i mysql para comprobar paquentes de MySQL que estén instalados con anterioridad, y borrarlos con el comando yum remove si es necesario.
El siguiente paso es instalar realmente los paquetes del servidor. Para ello, escribimos en modo root:
yum install mysql-community-server, podemos añadir la opción -y (decir sí a todo).
La instalación ya se ha completado, ahora sólo tenemos que ejecutarlo y probarlo. Recuerde que Red Hat Enterprise Linux 7 reemplaza la gestión de servicios por systemd, por lo que la manera “correcta” de iniciar el servicio de mysql es:
systemctl start mysqld
Puede comprobar que ha iniciado correctamente haciendo:
systemctl status mysqld
Ahora conectarse desde localhost haciendo:
mysql -u root
También activar el autoinicio en el arranque.
systemctl enable mysqld.service

CREACIÓN DE BASE DE DATOS
  Se crea una base de datos llamada UPS con la siguiente sentencia:
 mysql> create database UPS;
Para hacer uso de la base de datos creada se utilizará la siguiente opción:
mysql> use UPS;

Se creará dos tablas: la primera tabla se llamara DATOS_PERSONALES y la segunda tabla INFORMACION_ACADEMICA.

Para esto se utilizara la siguiente sentencia con los siguientes campos:
Tabla DATOS_PERSONALES:
mysql> create table DATOS_PERSONALES (cedula varchar (10), nombres varchar(50), apellidos varchar(50), edad int, nacionalidad(50));

Se procede a insertar datos en las tabla creada anteriormente con la siguiente sentencia:

 mysql> insert into DATOS_PERSONALES values ( 0105866008, 'GABRIEL SEBASTIAN', 'AYALA NAREA', 23, 'ECUATRIANO');

Tabla INFORMACION_ACADEMICA:

mysql> create table INFORMACION_ACADEMICA (cedula varchar (10), universidad(50), nivel int, campus varchar(50), carrera varchar(50));

 
 
Se procede a insertar datos en la tabla creada:
 mysql> insert into INFORMACION_ACADEMICA values ( 0105866008, 'POLITECNICA SALESIANA', 10, 'SUR' , 'SISTEMAS');
 Se puede realizar consulta a las tablas con la siguiente sentencia:
select * from DATOS_PERSONALES;

select * from INFORMACION_ACADEMICA;


Realizar conexión entre la base de datos MySQL con Apache.

Primero se debe realizar un archivo de conexión con extensión .jsp para allí configurar la conexión a las bases creadas con anterioridad.

Para acceder con JSP y Tomcat a MySQL se necesitará el driver JDBC correspondiente que se lo puede descargar gratuitamente desde la web:

 Después de descargar el archivo zip, se descomprimen los archivos y se copia el archivo ' mysql-connector-java-3.1.14-bin' en la siguiente dirección:
/usr/java/tomcat/lib.
Se crea el archivo con extensión jsp con el siguiente nombre: index.jsp en la siguiente dirección /opt/tomcat/webapps/ROOT que será la página de inicio, donde se colocará dos botones para cargar la información de las tablas creadas anteriormente en la base UPS en MySQL.

 

Se crea una segunda página con extensión .jsp que se llama datos_personales.jsp donde se encuentra el código fuente de conexión hacia la base de datos con APACHE y la consulta hacia la tabla DATOS_PERSONALES.

Se realiza la consulta de la tabla DATOS_PERSONALES y  se coloca los resultados en una tabla de html.

 Luego realizara una tercera página con extensión .jsp que se llamara información_academica.jsp que contendrá el mismo código fuente de la conexión a la base de y la consulta para obtener datos de la tabla INFORMACION_ACADEMICA.

OBTENCIÓN DE DATOS EN HTML

La página principal desplegará la siguiente pantalla.

En el botón datos personales se desplegará la siguiente información.
En el botón información académica se mostrará la siguiente pantalla.



ver XML desde HTTP

sábado, 6 de junio de 2015
Posted by Unknown
VER ARCHIVO XML EN HTML

Vamos a crear un archivo XML el cual será leído desde HTML en el sistema operativo CENTOS 7, se necesita tener instalado el servidor apache y levantar el servicio httpd, lo cual está explicado en este blog en la parte derecha encuentras el link.
Definición XML

·    Especificación para diseñar lenguajes de marcado, que permite definir etiquetas personalizadas para descripción y organización de datos.
·    Es un estándar internacionalmente conocido.
·    No pertenece a ninguna compañía.
·    Permite una utilización efectiva en Internet para sus diferentes terminales.
Documento XML
·    Conjunto de datos con sus respectivas etiquetas de marcado XML.
·    Se almacena como texto en archivo con extensión .xml.
·    Un documento XML puede incluir cualquier flujo de datos basado en texto: un artículo de una revista, un resumen de cotizaciones de
bolsa, un conjunto de registros de una base de datos, etc.
Archivo ejemplo XML
Creamos el archivo con extensión .xml y lo guardamos en el directorio /var/www/http
<CATALOGO>
    <CD>
        <TITULO>AYALA NAREA</TITULO>
        <ARTISTA>GABRIEL SEBASTIÁN</ARTISTA>
    </CD>
</CATALOGO>

Definición HTML



HTML es un lenguaje de programación que se utiliza para el desarrollo de páginas de Internet. Se trata de la sigla que corresponde a HyperText Markup Language, es decir, Lenguaje de Marcas de Hipertexto, que podría ser traducido como Lenguaje de Formato de Documentos para Hipertexto.

Archivo ejemplo HTML

Ahora creamos el archivo con extensión .html el cual guardamos en el mismo directorio del xml.
<html>
<body>

<script type="text/javascript">
var xmlDoc=null;
if (window.ActiveXObject)
{// code for IE
xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
}
else if (document.implementation.createDocument)
{// code for Mozilla, Firefox, Opera, etc.
xmlDoc=document.implementation.createDocument("","",null);
}
else
{
alert('Tu navegador no soporta esta funcion');
}
if (xmlDoc!=null)
{
xmlDoc.async=false;
xmlDoc.load("catalogo.xml");
var x=xmlDoc.getElementsByTagName("CD");

document.write("<table border='1'>");
document.write("<thead>");
document.write("<tr><th>NOMBRE</th><th>APELLIDO</th></tr>");
document.write("</thead>");

document.write("<tfoot>");
document.write("<tr><th colspan='2'>UNIVERSIDAD POLITÉCNICA SALESIANA</th></tr>");
document.write("</tfoot>");

for (var i=0;i<x.length;i++)
{
document.write("<tr>");
document.write("<td>");
document.write(x[i].getElementsByTagName("ARTISTA")[0].childNodes[0].nodeValue);
document.write("</td>");

document.write("<td>");
document.write(x[i].getElementsByTagName("TITULO")[0].childNodes[0].nodeValue);
document.write("</td>");
document.write("</tr>");
}
document.write("</table>");
}
</script>
</body>
</html>

Finalmente procedemos a cargar desde el navegador y se mostrará los datos que se están  extrayendo desde el xml.


calculadora en SHELL

viernes, 5 de junio de 2015
Posted by Unknown
CALCULADORA EN SHELL


Un shell, es el término usado en informática para referirse a un intérprete de comandos, el cual consiste en la interfaz de usuario tradicional de los sistemas operativos basados en Unix y similares como GNU/Linux.
Mediante las instrucciones que aporta el intérprete, el usuario puede comunicarse con el núcleo y por extensión, ejecutar dichas órdenes, así como herramientas que le permiten controlar el funcionamiento de la computadora.
En este blog realizaremos una calculadora programado con comandos básicos aritméticos y comandos lógicos.

COMANDOS LÓGICOS
·        !=
no es igual a / Distinto
if [ "$a" != "$b" ]
NOTA: este operador usa coincidencia de patrón dentro de doble corchete.
·        <
es menor que (en orden alfabético ASCII)
if [[ "$a" < "$b" ]]
if [ "$a" \< "$b" ]
Nota: el operador “<” necesita ser escapado dentro de corchetes.
·        >
es mayor que (en orden alfabético ASCII)
if [[ "$a" > "$b" ]]
if [ "$a" \> "$b" ]
Nota: el operador “>” necesita ser escapado dentro de corchetes.
·        -z
La cadena está vacía (nulll), tiene longitud cero.
String=''   # Variable de longitud cero (null)
if [ -z "$String" ]
then
echo "\$String está vacía."
else
echo "\$String no está vacía."
fi
·        -n
cadena no está vacía (contiene algo)
nota: El operador -n exige que la cadena esté entre comillas entre paréntesis. Aunque el uso sin comillas puede funcionar, es altamente recomendable usar comillas.
Comparaciones lógicas
·        -a
Y lógico (and)
·         exp1 -a exp2
devuelve verdadero si ambas exp1 y exp2 son verdaderas.
·        -o
O lógico (or)
·         exp1 -o exp2
devuelve verdadero si alguna de las expresiones exp1 y exp2 son verdaderas.
Éstos últimos operadores son similares a los operadores de Bash && (and) y || (or) cuando se usan con doble corchete:
[[ condition1 && condition2 ]]

EJEMPLO DE CALCULADORA

#! /bin/bash
clear
opcion=2
while [ $opcion -ne 5 ]
do
echo -n "---------------------------------"
echo -e "\n CALCULADORA SEBASTIAN AYALA"
echo "1.suma"
echo "2.resta"
echo "3.multiplicación"
echo "4.AND"
echo "5.salir"

read -n 1 -p "Introduce una opcion " opcion
echo -e "\n"
case $opcion in
1) read -e -p "Introduce el 1 numero " numero1
read -p "Introduce el 2 numero " numero2
echo "El resultado de la suma es `expr $numero1 + $numero2`" ;;
2) read -p "Introduce el 1 numero " numero1
read -p "Introduce el 2 numero " numero2
echo "El resultado de la resta es `expr $numero1 - $numero2`" ;;
3) read -p "Introduce el 1 numero " numero1
read -p "Introduce el 2 numero " numero2
echo "El resultado de la multiplicación es `expr $numero1 '*' $numero2`" ;;
4) read -p "Introduce el 1 numero " numero1
read -p "Introduce el 2 numero " numero2
#echo "El resultado del AND es `expr $numero1 --a $numero2`" ;;
if [ "$numero1" -eq "$numero1" ] && [ "$numero1" -eq "$numero2" ]
then
echo "true"
else
echo "false"
fi

esac
done




Welcome to My Blog

Popular Post

Blogger templates

Con la tecnología de Blogger.

Datos personales

Blogger templates

- Copyright © Aplicaciones Telematicas -Robotic Notes- Powered by Blogger - Designed by Johanes Djogan -