Instructor: Ing. Salvador Mondragón Avilés
Empresa: SAMICOM, Web&Solutions
Impartido a: Congreso Nacional de Software Libre (CONSOL)
Objetivo del curso:
Aprender a diseñar y desarrollar aplicaciones web con interacciones a bases de datos,
cubriendo conceptos básicos de HTML, CGI (Common Gateway Interface, por sus siglas en
inglés), JavaScript, servidor web apache, base de datos Postgres y comandos de UNIX y
sentencias SQL.
TEMARIO:
SAMICOM,Web&Solutions
Curso de capacitación para el diseño y desarrollo de
aplicaciones web basadas en Linux
1. Justificación y utilidad de las aplicaciones Web
2. Linux como plataforma de desarrollo de aplicaciones web
3. Servidor web apache
4. Concepto y ejemplos de CGI
5. Formularios HTML
6. Validación de formularios
7. Recepción, formateo y almacenamiento de datos en el CGI
8. Presentación de datos recibidos
9. Base de datos Postgres
10. Conexión a la base a través de un CGI
11. Rutinas de sentencias SELECT, INSERT, UPDATE y DELETE
12. Integración de temas en una aplicación práctica
13. Bibliografía
Sur 105 No. 343
Col. Héroes de Churubusco C.P. 09090, Tel. 55815126
http://www.samicom.com.mx/site/
e-mail:
[email protected]
SAMICOM,Web&Solutions
Descripción de temas
1. Justificación y utilidad de las aplicaciones Web
Hoy en día las aplicaciones web están presentes prácticamente en la
mayoría de las actividades de la sociedad y su única finalidad es la de hacer más
rápidas y eficientes las tareas a las que se encuentran asignadas (o al menos ese
es el propósito).
Es por lo anterior que encontramos una infinidad de aplicaciones en Internet
que nos permiten realizar una sinúmero de servicios, que van desde la consulta en
línea del correo electrónico hasta el pago de impuestos. Estas aplicaciones evitan
que el usuario se traslade, por ejemplo, al banco para realizar en pago de
servicios telefónicos, con sólo visitar la página web de la empresa telefónica puede
consultar su saldo y también realizar el pago del mismo.
Lo único que limita a una aplicación web es nuestra imaginación, ya que
prácticamente se puede pensar en realizar cualquier aplicación, sólo basta tener el
interés y conocer las herramientas necesarias para lograrlo. Puesto que lo único
que necesitamos para desarrollar una aplicación web es lo siguiente:
1. Un poco de conocimiento de HTML (lenguaje para las páginas web), es
importante conocer este lenguaje ya que todas las respuestas y formularios
de los CGI están 100% ligados a este lenguaje.
2. Un lenguaje de programación, que puede ser C, PERL, Bourne Shell,
Vbscript, etc. El lenguaje que se use debe contar con la facilidades
necesarias para realizar las tareas que se necesiten de él. Como
programador se debe estar lo suficientemente familiarizado con el lenguaje
elegido para trabajar con eficiencia.
3. Acceso a un servidor Web en funcionamiento, debido a que los CGI son
una interfaz entre el cliente (navegador) y el servidor y no pueden ser
probados si el servidor no ejecuta peticiones Web.
2. Linux como plataforma de desarrollo
Sur 105 No. 343
Col. Héroes de Churubusco C.P. 09090, Tel. 55815126
http://www.samicom.com.mx/site/
e-mail:
[email protected]
SAMICOM,Web&Solutions
Como uno de los requisitos para probar un CGI es tener acceso a un
servidor Web, el sistema operativo Linux nos servirá para cumplir dicho requisito.
La idea de utilizar Linux como plataforma de desarrollo obedece al buen
desempeño que éste tiene como servidor Web, sumado a su fácil instalación y
configuración, además de que con Linux no se necesita al pago de ninguna
licencia por su uso ya que forma parte del movimiento de software libre (para
mayor información del uso y desarrollo de software libre puedes visitar:
http://www.fsf.org). La distribución que utilizaremos para este curso es la de Linux
Red Hat 7.1 (http://www.redhat.com), que como todas las distribuciones de Linux
cuenta con un servidor Web, bases de datos, servidor de correo electrónico, DNS,
entre otros servicios.
Otra ventaja que nos presenta Linux es que también corre en arquitecturas
Intel, lo que nos permite instalarlo en un PC con un mínimo de recursos de
hardware, permitiéndonos así tener en una pequeña máquina todo un servidor
para el desarrollo de aplicaciones web.
Requisitos mínimos de instalación para Linux Red Hat 7.1
• PC Pentium 133 MHz
• 32 MB de RAM
• HD de 2.0 GB
• CD-ROM
• Tarjeta de red Ethernet de 10 MBPS
Este curso no cumple con el objetivo de instalar Linux en una PC, pero se
Manual de instalación:
anexa la liga dierecta al manual de instalación de la versión 7.1 de Red Hat:
http://www.redhat.com/docs/manuals/linux/RHL-7.1-Manual/install-guide/
3. Servidor Web apache
servidor Web que utiliza Linux por default es apache
(http://www.apache.org ) ya que también es parte de un proyecto de software libre
por lo que es libre de licencias y tiene todas las funcionalidades de software de
servidores web como I Planet, Zeus, IIS, entre otros. Con el servidor Web apache
podemos ejecutar aplicaciones programadas en distintos lenguajes como PERL,
PHP, C, JAVA, entre otros. Otro servicio que ofrece apache como servidor web es
el de "Servidor Virtual", este servicio permite tener hospedadas en un mismo
servidor Linux distintas páginas web con sus respectivos dominios, es decir
pueden estar en Linux páginas como: www.dominio1.com, www.dominio2.com,
www.dominio3.com, ..., www.dominion.com. Para el cliente que las visita puede
El
Col. Héroes de Churubusco C.P. 09090, Tel. 55815126
Sur 105 No. 343
http://www.samicom.com.mx/site/
e-mail:
[email protected]
SAMICOM,Web&Solutions
considerar que navega en distintos servidores, sin saber que está navegando en
uno sólo.
Lo importante que hay que saber, como desarrollador, de apache es saber
cómo ponerlo en servicio y saber dónde se deben de colocar las páginas web que
contengan los formularios y dónde colocar los programas CGI para su ejecución,
lo cual mencionaremos acontinuación:
Cómo inicio el servicio de apache:
En linux el servicio de apache se llama httpd (hiper text transfer protocol
daemon) y para poder administrar este servicio debemos de entrar al servidor
Linux como super usuario, es decir como root. Esto puede ser de manera local o
remota (vía telnet o ssh, ver figura), ya sea desde una máquina con Windows o
bien desde una máquina con Linux
Una vez que se ha entrdado al sistema como superusuario, debe de aparecer un
prompt parecido a este: [root@server /root]#, hay que verificar si el servicio
httpd está dado de alta para que cada vez que se reinicie el servidor éste también
se inicie. Esto se hace a través del comando setup y se ejecuta de la siguiente
manera:
[root@server /root]#setup
Una vez ejecutado este comando, aparecerá una ventana como la siguiente:
Col. Héroes de Churubusco C.P. 09090, Tel. 55815126
Sur 105 No. 343
http://www.samicom.com.mx/site/
e-mail:
[email protected]
SAMICOM,Web&Solutions
Dentro de el menú que aparece, se debe de seleccionar la opción System
services con la tecla de tab posicionarse en la opción Run Tool y teclear enter.
Una vez que se hace lo anterior nos aprecerá una ventana donde se nos muestran
los distintos servicios que se tiene habilitados para el arranque del sistema. Con la
tecla de flecha hacia abajo hay que desplazarce hasta el servicio httpd y verificar
si está habilitado, si está habilitado aparecerá un asterisco entre los corchetes, en
caso contrario, se habilita con la tecla de barra espaciadora. Una vez habilitado
con la tecla tab hay que posicionarse en la opcion OK y dar enter, con esto
aseguramos que cada vez que se reinicie nuestro servidor se habilitará el servicio
httpd. Una vez que damos OK, el sistema nos regresará a la ventana anterior y en
ella debemos de posicionarnos en la opción Quit con la tecla de tab y dar enter
para salirnos y regresar al prompt de root:
[root@server /root]#
Col. Héroes de Churubusco C.P. 09090, Tel. 55815126
Sur 105 No. 343
http://www.samicom.com.mx/site/
e-mail:
[email protected]
SAMICOM,Web&Solutions
Para evitar reiniciar el servidor para que se inicie el servicio de httpd se puede
levantar el servicio de la iguiente manera:
[root@server /root]#/etc/rc.d/init.d/httpd start
Si todo está bien nos aprecerá los siguiente:
Starting httpd: [ OK ]
[root@server /root]#
Para probar el buen funcionamiento del servidor Web, es posible hacerlo a través
de un navegador y tecleando la dirección IP del servidor y si aparece una página
como la siguiente toda está correcto y prácticamente estámos listos para empezar
con la pruebas de nuestros primeros CGI:
Col. Héroes de Churubusco C.P. 09090, Tel. 55815126
Sur 105 No. 343
http://www.samicom.com.mx/site/
e-mail:
[email protected]
SAMICOM,Web&Solutions
Una vez que el servidor Web está funcionando correctamente estámos listos para
iniciar con la prueba de los CGI, pero antes de iniciar con las pruebas es
necesario saber algo más sobre el servidor Web apache y es lo siguiente:
Ubicación de archivos html y programas CGI dentro del servidor Web apache
Es claro que tanto la edicón de páginas
Comentarios de: Curso de capacitación para el diseño y desarrollo de aplicaciones web basadas en Linux (0)
No hay comentarios