Servicios Desarrollo Web

26
Instalación y configuración básica de herramientas necesarias para desarrollar en Debian GNU/Linux con Apache + PHP + PostgreSQL + phpPgAdmin + ADOdb + Smarty T.S.U. Leonardo Caballero [email protected] [email protected] FUNDACITE-MÉRIDA

description

Servicio de Desarrollo web

Transcript of Servicios Desarrollo Web

  • InstalacinyconfiguracinbsicadeherramientasnecesariasparadesarrollarenDebianGNU/Linuxcon

    Apache+PHP+PostgreSQL+phpPgAdmin+ADOdb+Smarty

    T.S.U. Leonardo [email protected]

    [email protected]

  • LicenciaLicencia

    Copyright (c) 2005 Ing. Carol Lobo.Copyright (c) 2005 Ing. Carol Lobo.Modificado Junio 2006, T.S.U. Leonardo CaballeroModificado Junio 2006, T.S.U. Leonardo Caballero

    Permission is granted to copy, distribute and/or modify this document under the Permission is granted to copy, distribute and/or modify this document under the

    terms of the GNU Free Documentation License, Version 1.2 or any later version terms of the GNU Free Documentation License, Version 1.2 or any later version

    published by the Free Software Foundation; with no Invariant Sections, no Front-published by the Free Software Foundation; with no Invariant Sections, no Front-

    Cover Texts, and no Back-Cover Texts. A copy of the license is included in the Cover Texts, and no Back-Cover Texts. A copy of the license is included in the

    section entitled "GNU Free Documentation License".section entitled "GNU Free Documentation License".

  • GNU Free Documentation LicenseGNU Free Documentation License

    Puede obtener una copia de la licencia GNU Free Documentation License en Puede obtener una copia de la licencia GNU Free Documentation License en

    los siguientes enlaces:los siguientes enlaces:

    http://www.gnu.org/copyleft/fdl.htmlhttp://www.gnu.org/copyleft/fdl.html

    http://www.fsf.org/licensing/licenses/fdl.htmlhttp://www.fsf.org/licensing/licenses/fdl.html

  • Caractersticas del Curso

    Duracindelcurso:de5a8horas.

    Instructores:1instructor.

    Objetivosdelcurso:

    RealizarlainstalacindelasherramientasnecesariasparaeldesarrollodeaplicacioneswebenDebianGNU/Linuxbasadasen:

    Apache+PHP+PostgreSQL+phpPgAdmin+ADOdb+Smarty

  • Herramientas a instalar

    Apache

    PHP

    PostgreSQL

    phpPgAdmin

    ADOdb

    Smarty

  • Apache

    El servidor HTTP Apache es un servidor HTTP de cdigo abierto paraplataformasUnix(BSD,GNU/Linux,etctera),Windowsyotras,queimplementaelprotocoloHTTP/1.1.

    ElservidorApachesedesarrolladentrodelproyectoHTTPServer (httpd)de laApacheSoftwareFoundation.

    En la actualidad (2006), Apache es el servidor HTTP ms usado, siendo elservidorHTTPdel68%delossitioswebenelmundoycreciendoansucuotademercado.

  • Instalacin de Apache BuscarinstaladordeApache:

    Porelgestordepaquetesejecuteelsiguientecomando:

    # apt-cache search apache2 -n | less Instalarapache

    Porelgestordepaquetes,seleccionandolaopcincorrectayluegoejecuteelsiguientecomando:

    # apt-get install apache2 Paquetesopcionalesparainstalar:

    # apt-get install apache2-common apache2-doc apache2-utils libapache2-mod-php4

    Iniciaelserviciodeapache:

    Pormediodelcomando:

    #/etc/init.d/apache2 start Enunexploradorcoloquelasiguientedireccin:

    http://localhost/

  • Configuracin de Apache EditamoselarchivodeconfiguracindeApache:

    # vim /etc/apache2/apache2.conf YverificamoselDirectoryIndex

    Debeestaras

    DirectoryIndex index.html index.cgi index.pl index.php index.xhtml //lnea sin editar

    DirectoryIndex index.php index.cgi index.pl index.html index.xhtml //lnea editada

  • Configuracin de Apache CreamosnuevosAlias

    BuscamoslaseccinAlias/icons/ylocopiamosypegamosnuevamentejustoabajodeelyloeditamosdeestaforma:

    Alias /php/ "/home/curso/desarrolloweb/php/"

    Options Indexes MultiViews AllowOverride None Order allow,deny Allow from all

    RecargamoslaconfiguracindelPHPenelservidorApacheejecutandoelsiguientecomando:

    #/etc/init.d/apache2 reload

  • PHP PHPacrnimorecursivode"PHP:HypertextPreprocessor".

    Esunlenguajedeprogramacininterpretado.

    PHPfueoriginalmentediseadoenPerl.

    Esusadoparalaprogramacindepginaswebdinmicas,habitualmenteencombinacinconunmotordebasedatoscomoMySQLoPostgreSQL.

    Ventajas:

    Capacidaddeaccederlamayoradelasbasededatosqueseutilizanenlaactualidad.

    Leer losdatosdesdediferentesfuentes, incluyendodatosquepuedeninsertar losusuariosdesdeformasHTMLymanipularlosdeformasencilla.

    EsLibre,porloquesepresentacomounaalternativadefcilaccesoparatodos.

  • Instalacin de PHP Buscarinstaladordephp:

    Porelgestordepaquetesejecuteelsiguientecomando:

    # apt-cache search php4 -n | less Instalarphp:

    Porelgestordepaquetes,seleccionandolaopcincorrectayluegoejecuteelsiguientecomando:

    # apt-get install php4 Paquetesopcionalesparainstalar:

    # apt-get install php4-common php4-pgsql php4-cli php4-apd php-fpdf

    Editeelsiguientearchivo:

    #vim /var/www/info.php Enunexploradorcoloquelasiguientedireccin:

    http://localhost/info.php

  • PostgreSQL

    PostgreSQL es un servidor de base de datos relacional libre, liberado bajo lalicenciaBSD.

    Esunaalternativaaotrossistemasdebasesdedatosdecdigoabierto(comoMySQL,FirebirdyMaxDB),ascomosistemaspropietarioscomoOracle,DB2oInformix.

  • Instalacin de PostgreSQL

    InstalacindePostgreSQLsobreDebian:

    Buscarinstaladordepostgresql:

    Porelgestordepaquetesejecuteelsiguientecomando:

    # apt-cache search postgresql -n | less Instalarpostgresql:

    Porelgestordepaquetes,seleccionandolaopcincorrectayluegoejecuteelsiguientecomando:

    # apt-get install postgresql Paquetesopcionalesparainstalar:

    # apt-get install postgresql-doc postgresql-client postgresql-autodoc

  • Configuracin de PostgreSQL

    Luegoeditamoslossiguientesarchivos:

    #vim /var/lib/postgres/data/pg_hba.conf En este archivo descomentamos la lnea:

    host all all 127.0.0.1 255.255.255.255 trust

    y luego agregamos la siguiente linea: host all all 192.168.25.0 255.255.255.0 md5

    #vim /var/lib/postgres/data/postgresql.conf En este archivo descomentamos la lnea:

    tcpip_socket = false Port = 5432

    y luego cambiamos el valor de false a true: tcpip_socket = true

  • Configuracin de PostgreSQL Reiniciamoselserviciopostgres:

    #/etc/init.d/postgresql restart Creamosunusuariopostgres:

    #su postgres

    postgres#createdb -E LATIN1 basededatos //Creamos la base de datos con codificacin LATIN1.

    postgres#psql basededatos postgres //Me conecto a la BD basededatos creada anteriormente.

    basededatos=#create user usuario ; //Creamos un usuario llamado usuario

    basededatos=#alter user usuario with password 'passwdusuario' ; //asignamos un password al usuario usuario

    basededatos=#select * from pg_shadow ; //vemos el usuario creado

    basededatos=#alter user usuario createdb createuser ; //le doy al usuario propiedades para crear Bases de datos y Usuarios

    basededatos=#\q //cierro la conexin con la BD basededatos

  • phpPgAdmin

    EsunpoderosoadministradordebasededatosvawebparaservidoresdebasesdedatosPostgreSQL.

  • Instalacin de phpPgAdmin

    BuscarinstaladordephpPgAdmin:

    Porelgestordepaquetesejecuteelsiguientecomando:

    # apt-cache search phppgadmin -n | less InstalarphpPgAdmin:

    Porelgestordepaquetes,seleccionandolaopcincorrectayluegoejecuteelsiguientecomando:

    # apt-get install phppgadmin

  • Configuracin de phpPgAdmin

    Ya instalado phpPgAdmin, buscamos que est instalado la carpeta phppgadmin en eldirectorioelsiguientedirectorio:

    $cd /var/www/ $ls

    Sinoseencuentrainstaladoall,lobuscamos/usr/share/yhacemosunenlacesimblicoalacarpeta/var/www/ :

    $ln -s /usr/share/phppgadmin/ /var/www/phppgadmin

  • Configuracin de phpPgAdmin

    Luegoeditamoselsiguientearchivo:

    #vim /usr/share/phppgadmin/conf/config.inc.php En este archivo lo adaptamos a la siguiente configuracin:

    $conf['servers'][0]['desc'] = 'Curso - Libreta'; $conf['servers'][0]['host'] = '192.168.25.207'; $conf['servers'][0]['port'] = 5432; $conf['servers'][0]['defaultdb'] = 'libreta';

    Enunexploradorcoloqueladireccin:

    http://localhost/phppgadmin

    o actualizamos el cliente Web donde esta phpPgAdmin

  • ADOdb

    ADOdb:libreradeabstraccindeBasedeDatosparaPHPyPython.

    Estapermitealosprogramadoresdesarrollaraplicacioneswebdeunamaneraportable,rpidayfcil.Laventajaresideenquelabasededatospuedecambiarsinnecesidaddereescribircadallamadoalabasededatosrealizadoporlaaplicacin.

    Soportalassiguientesbasesdedatos:

    MySQL, PostgreSQL, Interbase, Firebird, Informix, Oracle, MSSQL, Foxpro,Access,Sybase,FrontBase,DB2,SAPDB,SQLite,Netezza,LDAP.

  • Instalacin de ADOdb BuscarelinstaladordeADOdb

    Porelgestordepaquetesejecuteelsiguientecomando:

    #apt-cache search adodb -n | less http://adodb.sourceforge.net/#download

    InstalarADOdb:

    Por el gestor de paquetes, seleccionando la opcin correcta y luego ejecute el siguientecomando:

    #apt-get install libphp-adodb ADOdb se instala en el directorio:/usr/share/php/adodb/ y requerimos entonces

    hacerunenlacealacarpeta/var/www/:

    #ln -s /usr/share/php/adodb/ /var/www/adodb

  • Configuracin de ADOdb

    Requerimoseditarunavariableenelarchivophp.ini:

    #vim /etc/php4/apache2/php.ini Editamoslosiguienteyluegoguardamoselarchivo:

    include_path = .:/usr/share/php //lnea sin editar include_path = .:/usr/share/php:/usr/share/php/adodb

    //lnea editada RecargamoslaconfiguracindelPHPenelservidorApacheejecutandoelsiguientecomando:

    #/etc/init.d/apache2 reload

  • Smarty

    Smarty:esunmotordeplantillasparaPHP,cuyoobjetivoessepararelcontenidodelapresentacinenunapginaweb,seencuentrabajo la licenciaGPLpor loquepuedeserusadolibremente.

    Es comnqueengrandesproyectos el rol dediseador grfico yel deprogramadorsean cubiertos por personas distintas, sin embargo la programacin en PHP tiene latendenciaacombinarestasdos laboresenunapersonaydentrodelmismocdigo loquetraeconsigograndesdificultadesalahoradecambiaralgunapartedeldiseodelapgina,puessetienequeescarbarentrelosscriptsparamodificarlapresentacindelcontenido,Smartytienecomoobjetivosolucionaresteproblema.

  • Instalacin de Smarty BuscarelinstaladordeSmarty

    Porelgestordepaquetesejecuteelsiguientecomando:

    #apt-cache search smarty -n | less InstalarSmarty:

    Por el gestor de paquetes, seleccionando la opcin correcta y luego ejecute el siguientecomando:

    #apt-get install smarty Smarty se instala en el directorio:/usr/share/php/smarty/libs/ y requerimos

    entonceshacerunenlacealacarpeta/var/www/:

    #ln -s /usr/share/php/smarty/libs/ /var/www/smarty

  • Configuracin de Smarty

    Requerimoseditarunavariableenelarchivophp.ini:

    #vim /etc/php4/apache2/php.ini Editamoslosiguienteyluegoguardamoselarchivo:

    include_path = .:/usr/share/php:/usr/share/php/adodb //lnea sin editar

    include_path = .:/usr/share/php:/usr/share/php/adodb:/usr/share/php/smarty/libs/ //lnea editada

    RecargamoslaconfiguracindelPHPenelservidorApacheejecutandoelsiguientecomando:

    #/etc/init.d/apache2 reload

  • [email protected]@[email protected]@gmail.com

    Gracias por su atencin!