conocimientos previos aplicaciones web
TRANSCRIPT
CONOCIMIENTOS PREVIOS APLICACIONES WEB
Por:
Anderson Herrera Duran
Ficha:
259747
Instructor:
Mauricio Ortiz
SENA
11/08/12
1- RAID (Redundant Array of Independent Disks - conjunto redundante de discos
independientes). Sistema de almacenamiento de información que utiliza múltiples discos
duros en donde se distribuyen y/o duplican datos. (Existen implementaciones RAID en un solo
disco duro, pero las ventajas no son importantes y técnicamente no es RAID). Un solo disco
duro contiene la información dentro de sí una sola vez. En su concepto más simple, RAID utiliza
múltiples discos como si se tratara de una unidad lógica sola. El sistema operativo y el usuario
ven un solo disco, pero en realidad la información es almacenada en todos los discos.
2- Porque el uso de múltiples discos duros con información duplicada y/o distribuida posee
ventajas en su seguridad, mayor tolerancia a fallos, mejor rendimiento y mayor capacidad.
Estas ventajas dependen del tipo de configuración RAID que se utilice.
3- RAID por software: El procesador de la máquina es el que se ocupa de hacer todos los cálculos, tomar todas las decisiones y determinar todos los eventos relacionados con el RAID. En el RAID por software se podrá ver DOS (o más) discos, y tú personalmente harás un RAID escogiendo partición a partición y uniéndolas en un RAID.
Ventajas: Es muy barato, puesto que se necesita solamente dos discos (con 2 basta para un raid-1, ó 0).
Desventajas: Consumirá recursos del procesador del servidor para mantener el raid, y se necesita particionar y unir las particiones en pedazos de raid.
RAID por hardware: En este tipo de RAID, vendrá una tarjeta de RAID (0, 1, 5 ó 1+0), la cual se añadirá en la máquina, además se necesitaran los discos requeridos en la máquina. Al arrancar la máquina, antes de cargar el boot loader, antes siquiera de instalar el sistema operativo, se entrará a una consola de administración del RAID, se armará el RAID necesario o requerido y solo entonces se procede a instalar el sistema operativo. El sistema operativo verá un sólo disco, que en realidad es la controladora de RAID por hardware haciéndose pasar por un disco. En este tipo de RAID el sistema operativo no se enterará de que tiene un RAID debajo, sencillamente leerá y escribirá al disco.
Ventajas: Mejora rendimiento, velocidad, seguridad y continuidad. La desventaja es el alto costo.
4- La controladora RAID (Redundant Array of Independent Disks) permite la comunicación entre los discos y la plataforma del equipo con un nivel de seguridad RAID configurable e independiente del sistema operativo y del procesador. Así garantizamos un sistema de alto de rendimiento en acceso a disco y de máxima seguridad. La integración de controladoras RAID de discos en el servidor nos permite crear capas de seguridad en los discos a través de algoritmos matemáticos con los cuales podemos recuperar información de discos caídos. Estos algoritmos son la base de los diferentes niveles RAID.
5- Los niveles de RAID más usuales, son el 0, 0+1, 5.
A continuación se dará una breve explicación de varios niveles de RAID.
RAID 0 (DISK STRIPPING): Este ofrece bandeado, sin redundancia de datos.
Si tengo dos N discos, la capacidad total será la suma de todos los N discos, las desventajas
está en que este tipo de RAID, no ofrece tolerancia a fallos, redundancia de datos, lo que
quiere decir que un error en un disco y muere el arreglo completo.
RAID 1 (DISK MIRRORING): Este arreglo, copia la misma información en los discos existentes,
requiere como mínimo dos discos con el mismo tamaño especificado, por lo cual se dice que
un disco actúa como espejo del otro. Este arreglo es 100% tolerante a fallos, ofrece alta
disponibilidad del sistema, es muy caro, capacidad de almacenamiento reducido.
RAID 2: Este tipo de RAID, ofrece verificación y corrección de errores utilizando un código
llamado código de haming.
Error checking and correcting, ECC
RAID 3 (PARALLEL DATA ACCESS): Ofrece redundancia sin tener que recurrir al mirroring.
Se utilizan x discos de datos, y un disco utilizado a la paridad, ejecutando un algoritmo, se
define el byte de paridad, el cual se escribe en el disco de paridad. Los datos se escriben de
forma paralela, así la velocidad de transferencia del RAID, equivale a la velocidad de un disco
multiplicada por x. Este RAID, es mejor para sistemas de un solo usuario con aplicaciones que
contengan grandes registros.
=> Disco de paridad.
RAID 4: Ofrece un sistema de discos independientes con disco de control de errores.
RAID 5: La información se divide en bloques, debido a esto las lecturas pueden ser
independientes, mejorando el número de transferencias E/S (entrada salida). La información
de la paridad se reparte entre todos los discos de forma rotatoria aliviando el cuello de botella
que se forma en el E/S. Las operaciones de lectura y escritura pueden superponerse.
La paridad se divide entre todos los discos.
RAID 6: Es similar al RAID 5, pero incluye un segundo esquema de paridad distribuido por los
distintos discos y por tanto ofrece tolerancia extremadamente alta a fallos y a caídas del disco,
posee un diseño complejo, rendimiento pobre, y se necesitan N+2 discos.
Dos esquemas de paridad en los discos.
RAID 7: Incluye un sistema operativo incrustado de tiempo real como controlador, haciendo
las operaciones de caché a través de un bus de alta velocidad. Las transferencias son
asíncronas, y las E/S están centralizadas por la caché, se necesita un disco de paridad exclusivo.
RAID 0+1 (STRIPPING + MIRRORING): Ofrece duplicación de datos en diferentes conjuntos de
discos, para un posterior stripping dentro de cada uno de dichos conjuntos; Este diseño ofrece
alto nivel de seguridad, altas prestaciones, fracciona los datos, mejora el rendimiento, requiere
mínimo 4 unidades, de las cuales solo dos de ellas almacena datos, y las unidades se deben
añadir de a pares, lo que duplica los costos.
6-
Implementación de raid por software en Centos 6.2
Para implementar raid en Centos 6.2 por software, debemos primero agregar discos duros, o
tenerlos con anticipación para efectuar el arreglo raid, en este caso se implementara raid 1,
por software, se está trabajando con la herramienta virtualbox, entonces se procederá a
agregar dos discos duros de igual tamaño en este caso para el raid 1, se va a la configuración
de la maquina y allí se agregan dos nuevos discos duros virtuales.
Listamos los discos con el comando fdisk -l
Luego de hecho esto, miramos los discos duros nuevos agregados, en este caso son el sdd, y el
sde, cada uno de 4 GB (4294 MB).
Luego de esto, procederemos a instalar la herramienta llamada mdadm, la cual sirve para
implementar raid.
Miramos si quedo instalado el paquete con rpm -q
Ahora lo que vamos a hacer es particionar los dos discos vacios, con la herramienta fdisk,
damos m para ver la ayuda.
Damos n para una nueva partición y la hacemos primaria con la letra p.
Le damos t, y le decimos que la partición 1 estará del tipo fd; luego daremos p para escribir los
cambios.
Por último damos w, para que guarde y cierre.
Damos fdisk –l, y vemos que las dos particiones quedaron en un modo raid autodetectect, y
que tienen una partición 1 la cual es primaria (sdd1 – sde1).
Como el punto de montaje md0 en este caso ya estaba ocupado, procederemos a crear un
nuevo punto de montaje con el nombre de md1, con el comando mknod.
Luego de hecho esto, utilizaremos la herramienta mdadm para crear el raid 1.
(/dev/md1) => indica el punto de montaje donde estará el raid.
(--level=1) => nos dice el nivel de raid que será implementado, en este caso un raid nivel 1.
(--raid-devices=2) => nos indica que el número de discos será de dos.
(/dev/sdd1 /dev/sde1) => por último le indicamos los discos duros ya particionados a utilizar.
Le damos formato al punto de montaje con el comando mkfs, en este caso un formato ext3.
Procedemos a montar el punto md1 en /mnt
Luego de esto miramos si el arreglo fue creado y está funcionando con cat /proc/mdstat
Podemos ver que está activo, en el punto de montaje md1.
Implementación de raid por software en Windows server 2008 R2
IMPLEMENTACIÓN DE RAID 0
Para implementar raid 0 en Windows server, Windows 7 o XP, si estamos trabajando desde el
virtualbox o una maquina real, primero agregaremos la cantidad de discos duros que
queramos implementar para nuestro raid 0, luego vamos a las herramientas administrativas
del equipo
Automáticamente nos reconoce los discos asignados para poder inicializarlos, inicializamos
ambos discos.
Para crear el raid 0, daremos clic derecho sobre cualquiera de los discos disponibles, y le
damos en crear nuevo volumen seleccionado.
Agregamos los dos discos disponibles.
Damos formato al volumen creado.
Vemos que el raid 0 fue creado.
IMPLEMENTACIÓN DE RAID 1
Para la implementación de un raid 1, agregamos dos discos duros de igual tamaño cada uno,
luego de esto damos clic derecho sobre cualquiera de los discos vacios, y le damos en la opción
nuevo volumen reflejado.
Agregamos los discos que queramos que hagan parte del raid 1, en este caso 2 discos.
Le asignamos una letra deseada.
Damos formato al nuevo volumen.
Podemos ver que el arreglo raid 1, fue creado satisfactoriamente, con 4 GB, puesto que con
este raid se pierde un disco completo, puesto que es el que actuará como disco espejo para la
redundancia de datos.
7-
Esquema de red:
Proceso de salida de la petición desde el PC
Podemos ver que el origen es 192.168.1.2 y el destino 172.16.0.2 (www.cisco.com).
Proceso de petición y respuesta en el servidor web y DNS
Examinando la PDU de entrada.
Examinando la PDU de salida.
Vemos la petición DNS.
Vemos la respuesta DNS.
8- Puertos bien conocidos se encuentran entre 0 y 1023 son reservados como su nombre lo
dice para servicios bien conocidos.
Puerto Protocolo Servicio
7 TCP - UDP ECHO
20 TCP FTP - datos
21 TCP FTP - control
22 TCP SSH
23 TCP Telnet
25 TCP SMTP
53 TCP DNS
53 UDP DNS
67 UDP BOOTP server; también es usado por DHCP
68 UDP BOOTP client; también es usado por DHCP
69 UDP TFTP
80 TCP HTTP
109 TCP POP2
110 TCP POP3
123 UDP NTP - sincronización
139 TCP NetBIOS
143 TCP IMAP4 – E-mails
161 UDP SNMP
179 TCP BGP
389 TCP LDAP
443 TCP HTTPS - HTTP over SSL
465 TCP SMTP over SSL
514 UDP syslog protocol
636 TCP LDAP over SSL
993 TCP IMAP4 over SSL
995 TCP POP3 over SSL
9- Los puertos del 1024 al 49151 son los "puertos registrados", y pueden ser usados por cualquier aplicación. Existe una lista pública en la web del IANA donde se puede ver qué protocolo usa cada uno de ellos.
Puerto Protocolo Servicio
1080 TCP SOCKS proxy
1433 TCP Microsoft SQL
1434 TCP Microsoft SQL Monitor
1434 UDP Microsoft SQL Monitor
1863 TCP MSN Messenger
3306 TCP MySQL sistema de base de datos
8080 TCP HTTP
8118 TCP Privoxy web proxy
Puertos dinámicos o privados: Los comprendidos entre los números 49152 (C000 en hexadecimal) y 65535 (FFFF en hexadecimal) son denominados dinámicos o privados, normalmente ser asignan en forma dinámica a las aplicaciones de clientes al iniciarse la conexión. Su uso es poco común son usados en conexiones peer to peer (P2P).
10- El protocolo de transferencia de hipertexto (HTTP, HyperText Transfer Protocol) es el protocolo usado en cada transacción de la Web (WWW). HTTP define la sintaxis y la semántica que utilizan los elementos software de la arquitectura web (clientes, servidores, proxys) para comunicarse. HTTP es un protocolo sin estado, es decir, que no guarda ninguna información sobre conexiones anteriores. HTTP es un protocolo orientado a transacciones y opera a través de un esquema petición-respuesta, entre un “cliente” y un “servidor”. Al cliente que efectúa la petición (un navegador o un spider) se lo conoce como “user agent” (agente del usuario, como es el Internet Explorer). El servidor es aquel en donde se almacenan las páginas de Internet. A la información transmitida se la llama recurso y se la identifica mediante un URL. Los recursos pueden ser archivos, el resultado de la ejecución de un programa, una consulta a una base de datos, la traducción automática de un documento, etc.
La información que sigue a “http” se denomina el URI (Uniform Resouce Identifier), más conocido como URL, lo que no es más que la dirección que estamos visitando. Cuando nos encontramos con direcciones https nuestro navegador emplea encriptación adicional para proteger la información que está siendo transferida, especialmente cuando se realizan transacciones en línea.
11-
Podemos ver cuando se establece la conexión, podemos ver que se da por el puerto 80.
El cliente envía un mensaje de saludo
El servidor responde con otro mensaje de saludo
Luego el servidor empieza a responder las solicitudes del cliente.
12-
Códigos de estado HTTP
1xx - Informativo
Estos códigos de estado indican una respuesta provisional. El cliente debe prepararse para
recibir una o más respuestas de tipo 1xx antes de recibir una respuesta normal.
100 - Continuar. 101 - Cambiando protocolos.
2xx - Correcto
Esta clase de códigos de estado indica que el servidor aceptó la petición del cliente
correctamente.
200 - OK. La petición del cliente se ha realizado correctamente. 201 - Creado. 202 - Aceptado.
3xx - Redirección
El explorador cliente debe realizar más acciones para cumplir la solicitud. Por ejemplo, puede
que el explorador tenga que solicitar una página diferente en el servidor o repetir la solicitud
utilizando un servidor proxy.
301 - Movido permanentemente
302 - Objeto movido. 304 - No modificado. 307 - Redirección temporal.
4xx - Error del cliente
Se produce un error, que parece causado por el cliente. Por ejemplo, el cliente puede solicitar
una página que no existe o quizás no proporcione información de autenticación válida.
400 - Solicitud incorrecta. 401 - Acceso denegado. IIS define varios errores 401 diferentes que indican de forma
más concreta el motivo del error. Estos códigos de error específicos se muestran en el explorador, pero no aparecen en el registro de IIS:
403 - Prohibido. IIS define varios errores 403 diferentes que indican de forma más concreta el motivo del error:
403.1 - Execute access forbidden (Acceso de ejecución denegado). 403.2 - Read access forbidden (Acceso de lectura denegado). 403.3 - Write access forbidden (Acceso de escritura denegado). 403.4 - SSL requerido. 403.5 - SSL 128 required (SSL 128 requerido). 403.6 - IP address rejected (Dirección IP rechazada). 403.7 - Se necesita un certificado de cliente. 403.8 - Acceso denegado a este sitio. 403.9 - Too many users (Demasiados usuarios). 403.13 - Certificado de cliente revocado.
404 - No encontrado. 404.0 - No se encuentra el archivo o directorio.
405 - El verbo HTTP usado para obtener acceso a esta página no está permitido (método no permitido)
406 - El explorador del cliente no acepta el tipo MIME de la página solicitada. 407 - Autenticación de proxy requerida. 412 - Error en la condición previa. 413 – Entidad de solicitud demasiado grande. 414 - El URI de la solicitud es demasiado largo. 415 – Tipo de medio no compatible. 416 – No se puede satisfacer el intervalo solicitado. 417 – Error de ejecución. 423 – Error de bloqueo.
5xx - Error del servidor
El servidor no puede terminar la solicitud porque encuentra un error.
500 - Error interno del servidor 501 - Los valores del encabezado especifican un método que no se ha implementado. 502 - El servidor web recibió una respuesta no válida mientras actuaba como puerta de
enlace o servidor proxy. 503 - Servicio no disponible. Este es un código de error específico de IIS 6.0. 504 - Tiempo de espera agotado para la puerta de enlace. 505 - Versión de HTTP no compatible.
13- Las cookies constituyen una potente herramienta empleada por los servidores Web para almacenar y recuperar información acerca de sus visitantes. Dado que el Protocolo de Transferencia de HiperTexto (HTTP) es un protocolo sin estados (no almacena el estado de la sesión entre peticiones sucesivas), las cookies proporcionan una manera de conservar información entre peticiones del cliente, extendiendo significativamente las capacidades de las aplicaciones cliente/servidor basadas en la Web. Mediante el uso de cookies se permite al servidor Web recordar algunos datos concernientes al usuario, como sus preferencias para la visualización de las páginas de ese servidor, nombre y contraseña, productos que más le interesan, etc. Una cookie no es más que un fichero de texto que algunos servidores piden a nuestro navegador que escriba en nuestro disco duro, con información acerca de lo que hemos estado haciendo por sus páginas. Entre las mayores ventajas de las cookies se cuenta el hecho de ser almacenadas en el disco duro del usuario, liberando así al servidor de una importante sobrecarga.
14- La arquitectura cliente-servidor es un modelo de aplicación distribuida en el que las tareas
se reparten entre los proveedores de recursos o servicios, llamados servidores, y los
demandantes, llamados clientes. Un cliente realiza peticiones a otro programa, el servidor, que
le da respuesta. Esta idea también se puede aplicar a programas que se ejecutan sobre una
sola computadora, aunque es más ventajosa en un sistema operativo multiusuario distribuido
a través de una red de computadoras.
En la arquitectura C/S el remitente de una solicitud es conocido como cliente. Sus
características son: Es quien inicia solicitudes o peticiones, tienen por tanto un papel activo en
la comunicación (dispositivo maestro o amo). Espera y recibe las respuestas del servidor. Por lo
general, puede conectarse a varios servidores a la vez.
15- Se conoce con el nombre de página web dinámica a aquélla, cuyo contenido se genera a partir de lo que un usuario introduce en un web o formulario; el contenido de la página no está incluido en un archivo html como en el caso de las páginas web estáticas. Las aplicaciones más conocidas de las páginas web dinámicas son mostrar el contenido de una base de datos, con base en la información que solicita un usuario a través de un formulario de web, actualizar el contenido de una base de datos, generar páginas web de contenido estático, mejorar la interacción entre el usuario y el sitio web.
Los sitios Web estáticos son aquellos sitios enfocados principalmente a mostrar una información permanente, donde el navegante se limita a obtener dicha información, sin que pueda interactuar con la página Web visitada, las Web estáticas están construidas principalmente con hipervínculos o enlaces (links) entre las páginas Web que conforman el sitio, este tipo de Web son incapaces de soportar aplicaciones Web como gestores de bases de datos, foros, consultas online, e-mails inteligentes entre otras aplicaciones.
16- Estructura básica de html:
<! DOCTYPE>
<html>
<head>
</head>
<body>
</body>
</html>
La primera línea está reservada al DOCTYPE (tipo de documento), después viene el documento HTML, que está dividido en dos secciones: head (cabecera) y body (cuerpo).
DOCTYPE: Define el tipo de documento. Este elemento, que muchos webs máster obvian (incorrectamente), le indica al navegador la versión y tipo de HTML empleado en el documento. De esta forma, el navegador usará el modelo de renderización adecuado al tipo de documento.
Elemento HTML: Delimita el documento HTML, indicando al navegador el comienzo y fin de la página html. Sus etiquetas son: <html> (Siempre al comienzo después del doctype) y </html> (Siempre al terminar el documento); (opcionales).
Elemento head: head viene del ingles cabeza y su función es delimitar cabecera del documento. Sus etiquetas son: <head> y </head> (opcionales).
Elemento body: Delimita el cuerpo del documento. Aquí van todos los contenidos de la página (texto, imágenes...) Todo lo que queremos mostrar a los lectores de nuestro documento. Sus etiquetas son: <body>, (Para delimitar el comienzo); y </body>, (al terminar, siempre antes de </html>).
Ejemplo:
17-
ETIQUETA “ELEMENTO”
ATRIBUTOS
CIERRE
DESCRIPCIÓN
<html> HEAD y BODY </html> Inicio y final de un
documento
HTML
<head> BASE, TITLE,ISINDEX, </head> Cabecera de un documento HTML
<title> </title> Título de la página Web
<body> BGCOLOR, BACKGROUND, TEXT, LINK, VLINK, ALINK
</body> Cuerpo de la página Web
18- En el código fuente de la página, se puede ver que está muy bien implementada, tiene todos los requerimientos básicos, como lo es el doctype, el elemento html, el head y el body; aparte de estos aspectos principales, podemos ver que tiene etiquetas tittle (para el titulo), link (el color del link), style (define hojas de estilo para el documento actual), script (coloca un script dentro del documento), div (agrupar un bloque de elementos, para luego añadirle un estilo determinado), input (para el ingreso de datos por parte del usuario) , li (define los objetos de la lista), ul (crear una lista desordenada), a (definir un destino o un origen de un
enlace), p (se utiliza para representar un párrafo), form (para formularios y elementos de formularios), etiquetas las cuales sirven para darles una mejor dinamicidad a la página web, por esto podemos decir que esta página es dinámica.
<table> BORDER,CELLPADDING,CELLSPACING, HEIGTH,WIDTH.,Internet,Explorer:,COLOR
</table> tabla
<tr> ALIGN, VALIGN </tr> Fila
<td> ALIGN, VALIGN,NOWRAP,COLSPAN, ROWSPAN,HEIGTH,WIDTH
</td> Columna
<A> HREF, NAME,REL, REV, TITLE </A> Hipervínculo
División de la página
<strong> </strong> Texto en negrita
<I> </I> Texto en cursiva
<S> </S> Texto subrayado
<form> División de lapágina </form> Formulario y elementos del formulario
<script> Var,if,for,funtio n,lenth,retung, new.
</script> Código de un script
<img> ALIGN, SRC,ALT, ISMAP,WIDTH,HEIGHT, VSPACE,HSPACE
Insertar una imagen
<font> SIZE, COLOR. InternetExplorer: FACE.
</font> Fuentes
<br> CLEAR Salto de línea
<noframe> </noframe>
Marcos
19- Tabla de colores RGB
Los colores básicos son: #FF0000 - Rojo #00FF00 - Verde #0000FF - Azul
Otros colores son: #FFFFFF - Blanco #000000 - Negro #FFFF00 - Amarillo
Para hacer un color más oscuro, simplemente reduce la intensidad del componente, dejando los otros dos iguales. Así, el rojo (#FF0000) se hace más oscuro asi: #CC0000, #990000, #660000, #330000 etc
Para hacer que un color más pastel, simplemente variar los otros dos colores dejando igual el principal. Así, el rojo (#FF0000) se hace más claro asi: #FF3333, #FF6666, #FF9999, #FFCCCC etc
La paleta de colores RGB(Red -Green - Blue, en español: Rojo -Verde - Azul) está representada por tres pares hexadecimales según el siguiente formato: #RRGGBB Los valores, para cada uno de los pares, van desde 00(0 decimal) aFF(255 decimal). Cuanto mayor sea el valor del par, tanto mayor será la intensidad de color de ese par.
20- Las hojas de estilo en cascada (Cascading Style Sheets, CSS) son un lenguaje formal que se usa para definir la presentación de un documento estructurado escrito en HTML o XML (y por extensión en XHTML). El W3C (World Wide Web Consortium) se encarga de realizar la especificación de las hojas de estilo que servirá de estándar para los agentes de usuario o navegadores.
La idea que se encuentra detrás del desarrollo de CSS es separar la estructura de un documento de su presentación. En resumidas cuentas, lo que se pretende con las hojas de estilo, es definir la maquetación de los documentos desde las hojas de estilo, dando desde este archivo los aspectos relativos al diseño del mismo. Dejando en el documento html el contenido organizado de forma jerárquica mediante las etiquetas correspondientes. Y facilitando así la actualización del diseño del web de manera más homogénea.
21- En la ingeniería de software se denomina aplicación web a aquellas herramientas que los usuarios pueden utilizar accediendo a un servidor web a través de Internet o de una intranet mediante un navegador. En otras palabras, es una aplicación software que se codifica en un lenguaje soportado por los navegadores web en la que se confía la ejecución al navegador.
Las aplicaciones web son populares debido a lo práctico del navegador web como cliente ligero, a la independencia del sistema operativo, así como a la facilidad para actualizar y mantener aplicaciones web sin distribuir e instalar software a miles de usuarios potenciales. Existen aplicaciones como los webmails, wikis, weblogs, tiendas en línea y la propia Wikipedia que son ejemplos bien conocidos de aplicaciones web.
22- PHP: es un lenguaje de programación interpretado, diseñado originalmente para la creación de páginas web dinámicas. Se usa principalmente para la interpretación del lado del servidor (server-side scripting) pero actualmente puede ser utilizado desde una interfaz de
línea de comandos o en la creación de otros tipos de programas incluyendo aplicaciones con interfaz gráfica usando las bibliotecas Qt o GTK+.
PHP nos permite embeber sus pequeños fragmentos de código dentro de la página HTML y realizar determinadas acciones de una forma fácil y eficaz, combinando lo que ya sabemos del desarrollo HTML. Es decir, con PHP escribimos scripts dentro del código HTML, con el que se supone que ya estamos familiarizados. Por otra parte, y es aquí donde reside su mayor interés con respecto a los lenguajes pensados para los CGI, PHP ofrece un sinfín de funciones para la explotación de bases de datos de una manera llana, sin complicaciones.
ASP: (Active Server Pages), es un lenguaje de programación de servidores para generar páginas Web dinámicamente. Se conocen cuatro versiones de este lenguaje las 1.0, 2.0, 3.0 y la ASP.NET que se la conoce como la ASP Clásica.
El ASP es un lenguaje de programación para servidores es adecuado para acceso a bases de datos, lectura de ficheros, etc. Se vale de dos lenguajes de Script, como son el VBScript y el JavaScript para que lo que programemos con el ASP sea visible.
PERL: Practical Extraction and Report Language es un sofisticado lenguaje de programación diseñado a finales de los años 80 por el lingüista norteamericano Larry Wall. PERL combina en forma concisa las mejores características de lenguajes como C, sed, awk y sh. En general, es posible reducir extensos programas escritos en C a pocas líneas de código de un programa PERL, con la ventaja adicional de que corren sin cambio sobre casi cualquier plataforma existente, lo que convierte a PERL en el lenguaje ideal para desarrollo de prototipos y aplicaciones robustas 100% portables. PYTHON: es un lenguaje de scripting independiente de plataforma y orientado a objetos, preparado para realizar cualquier tipo de programa, desde aplicaciones Windows a servidores de red o incluso, páginas web. Es un lenguaje interpretado, lo que significa que no se necesita compilar el código fuente para poder ejecutarlo, lo que ofrece ventajas como la rapidez de desarrollo e inconvenientes como una menor velocidad. Se pueden crear todo tipo de programas. No es un lenguaje creado específicamente para la web, aunque entre sus posibilidades sí se encuentra el desarrollo de páginas ; es multiplataforma, interpretado, Quiere decir que no se debe compilar el código antes de su ejecución; Interactivo, puesto que dispone de un intérprete por línea de comandos en el que se pueden introducir sentencias, orientado a Objetos.
CGI: CGI no es un lenguaje. Es simplemente un protocolo que puede ser usado para comunicarse entre formas Web y tu programa Un script CGI puede ser escrito en cualquier lenguaje que pueda leer de STDIN, escribir en STDOUT, y leer variables de entorno como virtualmente cualquier lenguaje de programación, incluyendo C, Perl, o incluso scripts de shell.
CGI, como la propia palabra indica es una interfaz entre servidores de información y programas de aplicación. Por tanto, define una serie de reglas que deben cumplir tanto las aplicaciones como los servidores para hacer posible la presentación de resultados de programas ejecutables en tiempo real a través de servicios de información estandarizados. Por ello, se habla de gateway o pasarela entre una y otra dimensión. Al tratarse de una interfaz, no existe ningún tipo de dependencia con el lenguaje de programación empleado.
.NET: .Net es la nueva plataforma de desarrollo que ha lanzado al mercado MicroSoft, y en la que ha estado trabajado durante los últimos años. Sin duda alguna va a ser uno de los entornos de desarrollo que reinen durante los proximos años.
.NET es un conjunto de tecnologías de software , compuesto de varios lenguajes de programación que se ejecutan bajo el .NET Framework. Es además un entorno completamente orientado a objetos y que es capaz de ejecutarse bajo cualquier plataforma.
La plataforma .NET apuesta por un futuro en el que las aplicaciones se ejecutan de manera distribuida en Internet. Así, una aplicación se ejecuta en un solo servidor y no existen múltiples copias de la misma. Además, una misma aplicación puede "adornarse" con distintas interfaces para que, desde diferentes dispositivos (teléfonos móviles, PDAs, portátiles, etc.) pueda accederse a la misma. La plataforma .NET no es más que un conjunto de tecnologías para desarrollar y utilizar componentes que nos permitan crear formularios web, servicios web y aplicaciones Windows.
JSP: JSP es un acrónimo de Java Server Pages, que en castellano vendría a decir algo como Páginas de Servidor Java. Es, pues, una tecnología orientada a crear páginas web con programación en Java. Con JSP podemos crear aplicaciones web que se ejecuten en variados servidores web, de múltiples plataformas, ya que Java es en esencia un lenguaje multiplataforma. Las páginas JSP están compuestas de código HTML/XML mezclado con etiquetas especiales para programar scripts de servidor en sintaxis Java. Por tanto, las JSP podremos escribirlas con nuestro editor HTML/XML habitual.
23- XAMPP, LAMP, WAMP, MAMP
XAMPP es un servidor independiente de plataforma, software libre, que consiste principalmente en la base de datos MySQL, el servidor Web Apache y los intérpretes para lenguajes de script: PHP y Perl. El nombre proviene del acrónimo de X (para cualquiera de los diferentes sistemas operativos), Apache, MySQL, PHP, Perl. El programa está liberado bajo la licencia GNU y actúa como un servidor Web libre, fácil de usar y capaz de interpretar páginas dinámicas. Actualmente XAMPP está disponible para Microsoft Windows, GNU/Linux, Solaris, y MacOS X.
LAMP presenta una funcionalidad parecida a XAMP, pero enfocada en Linux, y WAMP lo hace enfocado en Windows.
24- Una base de datos o banco de datos (en ocasiones abreviada con la sigla BD o con la abreviatura b. d.) es un conjunto de datos pertenecientes a un mismo contexto y almacenados sistemáticamente, y de forma ordenada para su posterior uso. Existen programas denominados sistemas gestores de bases de datos, abreviado SGBD, que permiten almacenar y posteriormente acceder a los datos de forma rápida y estructurada.
25- El lenguaje de consulta estructurado o SQL (por sus siglas en inglés structured query language) es un lenguaje declarativo de acceso a bases de datos relacionales que permite especificar diversos tipos de operaciones en estas. Una de sus características es el manejo del álgebra y el cálculo relacional permitiendo efectuar consultas con el fin de recuperar -de una forma sencilla- información.
26-
Filemaker: sistema de bases de más fácil de usar. Es compatible con Mac y Windows tanto para servidores equipos de escritorio y aplicaciones Web. Oracle: sistema de gestión de bases de datos desarrollado por Oracle Corporation. Fue punto de crítica de expertos en cuanto a su seguridad, ya que se detectaron 22 fallas que fueron corregidas con parches mejorando así el sistema MySQL: sistema de gestión de base de datos desarrollada por Sun Microsystem y más usada en el mundo fuera de ser software libre con un Licenciamiento de GNU GPL. Utilizado en plataformas Linux, Windows. Microsoft Access: sistema de gestión de base de datos creado por Microsoft para pequeñas empresas; pertenece a la categoría de Gestión y no de la ofimática. Sybase ASE: es un sistema de gestión de base de datos de la compañía Sybase. Es un motor de bases de datos de alto rendimiento, y puede manejar grandes volúmenes de información Borland Paradox: sistema de base de datos para entornos Windows, anteriormente estaba disponible para DOS y Linux. Fue desarrollada por Corel e incluida a WordPerfect (suite ofimática) Microsoft SQL server: sistema de gestión de bases de datos y su propietario es Microsoft. Se basa en un lenguaje transact-SQL. 27-
MYSQL en Windows XP
Primero descargamos el software que nos permitirá crear y administrar bases de datos MYSQL
Para crear y administrar las bases de datos, nos dirigimos a phpMyadmin.
Desde la interfaz grafica de este software podemos crear nuestras bases de datos, añadirle tablas, columnas, filas, etc. (es muy fácil, puesto que es interfaz grafica).
MYSQL en Centos 6.2
Lo primero que debemos hacer es instalar los paquetes de mysql, con el comando “yum install mysql mysql-server”
Para efectos prácticos, en este punto se desactivara el firewall, para que no nos bloquee
ningún puerto asociado a nuestro mysql, procederemos a desactivarlo desde el system-config-
firewall-tui
Ahora procederemos a configurar las iptables, para añadir permisos al puerto asociado con
mysql (3306).
Luego guardamos la configuración de iptables.
Reiniciamos el servicio iptables, para que coja la configuración dada.
Ejecutamos los siguientes comandos para que SELinux permita al usuario regular establecer
conexiones hacia el zócalo de MySQL, y para que SELinux permita al MySQL conectarse a
cualquier puerto distinto al 3306.
Para que mysql permanezca activo lo configuramos con chkconfig, y luego procedemos a
iniciar el servicio mysql con el comando service mysqld Stara.
Agregamos la contraseña al root del mysql.
Para crear bases de datos lo hacemos con create, y para eliminar bases de datos le damos la
opción drop.
Para crear un respaldo de la base de datos, lo podemos hacer con el comando mysqldump –
opt –u root –p “nombre_base_datos” > archivo_respaldo.sql
Para entrar y utilizar mysql, basta con poner mysql en la terminal, pero si ya hemos creado una
contraseña y un usuario debemos darle el comando mysql –u root -p
Para listar las bases de datos existentes, damos “show databases;”
Para usar la base de datos que queramos, damos USE ”base_de_datos;”
Podemos ver que la base de datos “basededatos” esta listada.
Luego nos dirigimos a la base de datos que queramos, y estando ahí ya podemos crear, o
modificar la base de datos.
Para crear tablas lo hacemos con “create table “nombre” (especificaciones);” y podemos
especificar los campos que va a tener (char). Es importante poner el punto y coma (;) luego de
cualquier directriz para que se pueda ejecutar eficientemente.
Nos dirigimos a la base de datos deseada, y listamos las tablas que contiene con el comando
“show tables;”
Para introducir datos en los campos, lo hacemos con “INSERT INTO nombre_tabla VALUES
('dato', 'dato');”
Luego miramos que si quedaron dichos campos en la tabla, lo hacemos con “SELECT * from
nombre_tabla;”
Para el entorno grafico de mysql en Centos, podemos instalar phpmyadmin, el cual nos sirve
para la administración por entorno grafico de mysql.
28- Lista de comandos básicos para administrar Mysql:
Es importante tener en cuenta que luego de cada comando hay que finalizar en punto y coma
(;).
SHOW databases; => para listar las bases de datos que hay.
USE nombre_base_datos; => la utilizamos para usar una base de datos especifica.
INSERT INTO nombre_tabla VALUES ('dato', 'dato'); => Para insertar datos en la tabla.
desc nombre_tabla; => Ver especificación de una tabla.
Show index from nombre_tabla; => Ver índices de una tabla.
ALTER TABLE nombre_tabla ADD COLUMN nombre_columna CHAR(11) NOY NULL; => Crear
columna.
ALTER table nombre_tabla RENAME TO nuevo_nombre; => Renombrar tabla.
DROP table tabla1[, tabla2,…]; => Eliminar tabla
ALTER TABLE nombre_tabla DROP COLUMN nombre_columna; => Eliminar columna