6
INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO IDAT PIURA Docente: Jaime Bolívar Arambulo Sistemas Operativos III Página 1 SERVIDOR WEB CON APACHE + MYSQL + PHP EN CENTOS Instalamos Los Paquetes Principales yum -y install ntp httpd mysql-server php php-mysql php-mbstring php-mcrypt phpmyadmin Configuramos El Arranque De MYSQL Y Lo Iniciamos chkconfig mysqld on /etc/init.d/mysqld start Aquí Le Damos Seguridad A Nuestro MYSQL, Gracias A Este Modulo mysql_secure_installation Configuramos el PHPMYADMIN para poder entrar, ya que por defecto solo el LOCALHOST puede acceder a él, comentamos unas líneas. gedit /etc/httpd/conf.d/phpmyadmin.conf # # Web application to manage MySQL # #<Directory "/usr/share/phpmyadmin"> # Order Deny,Allow # Deny from all # Allow from 127.0.0.1 #</Directory> Alias /phpmyadmin /usr/share/phpmyadmin Alias /phpMyAdmin /usr/share/phpmyadmin Alias /mysqladmin /usr/share/phpmyadmin Cambiamos La Autenticación Del PHPMYADMIN Desde Cookie Hasta HTTP gedit /usr/share/phpmyadmin/config.inc.php [...] /* Authentication type */ $cfg['Servers'][$i]['auth_type'] = 'http';

Servidor Web Con Apache Mysql Php en Centos

  • Upload
    hary

  • View
    21

  • Download
    6

Embed Size (px)

Citation preview

  • INSTITUTO SUPERIOR TECNOLGICO PRIVADO IDAT PIURA

    Docente: Jaime Bolvar Arambulo Sistemas Operativos III Pgina 1

    SERVIDOR WEB CON APACHE + MYSQL + PHP EN CENTOS

    Instalamos Los Paquetes Principales yum -y install ntp httpd mysql-server php php-mysql php-mbstring php-mcrypt phpmyadmin

    Configuramos El Arranque De MYSQL Y Lo Iniciamos

    chkconfig mysqld on /etc/init.d/mysqld start

    Aqu Le Damos Seguridad A Nuestro MYSQL, Gracias A Este Modulo

    mysql_secure_installation

    Configuramos el PHPMYADMIN para poder entrar, ya que por defecto solo el LOCALHOST puede acceder a l, comentamos unas lneas.

    gedit /etc/httpd/conf.d/phpmyadmin.conf # # Web application to manage MySQL # # # Order Deny,Allow # Deny from all # Allow from 127.0.0.1 # Alias /phpmyadmin /usr/share/phpmyadmin Alias /phpMyAdmin /usr/share/phpmyadmin Alias /mysqladmin /usr/share/phpmyadmin

    Cambiamos La Autenticacin Del PHPMYADMIN Desde Cookie Hasta HTTP

    gedit /usr/share/phpmyadmin/config.inc.php [...] /* Authentication type */ $cfg['Servers'][$i]['auth_type'] = 'http';

  • INSTITUTO SUPERIOR TECNOLGICO PRIVADO IDAT PIURA

    Docente: Jaime Bolvar Arambulo Sistemas Operativos III Pgina 2

    [...]

    Configuramos El Arranque De Apache Y Lo Iniciamos

    chkconfig -httpd on /etc/init.d/httpd start

    Luego ya probamos desde cualquier navegador el acceso a nuestro servidor web, al PHPMYADMIN, etc.

    http://jaimebolivar.com/phpmyadmin/ http://192.168.1.36/phpmyadmin/ http://localhost/phpmyadmin/

    Editando El Archivo De Configuracin De Apache

    gedit /etc/httpd/conf/httpd.conf UTF-8 y codificacin de documentos

    UTF-8 UTF-8 es un mtodo de codificacin de ASCII para Unicode (ISO-10646), el Conjunto de Caracteres Universal o UCS. ste codifica la mayora de los sistemas de escritura del mundo en un solo conjunto de caracteres, permitiendo la mezcla de lenguajes y guiones en un mismo documento sin la necesidad de ajustes para realizar los cambios de conjuntos de caracteres. Cualquier sitio de red que haga uso de bases de datos y documentos HTML suele toparse con problemas cuando se trata de lidiar con el tipo de codificacin (UTF-8, ISO-8859-1, etc.), puesto que en algunos casos, por citar un ejemplo, los caracteres latinos se muestran incorrectamente por el cambio de codificacin. Debido a su conveniencia actualmente se est adoptando UTF-8 como codificacin para todo, sin embargo an hay mucho material codificado en, por ejemplo, ISO-8859-1. Lo correcto es codificar los documentos codificados en ISO8859-1 y otras tablas de caracteres hacia UTF-8, utilizando mtodos como el siguiente: cd /var/www/html/ for f in *.html do vi -c ":wq! ++enc=utf8" $f done Si desea continuar y no aceptar el nuevo estndar, tambin puede desactivar la funcin en

  • INSTITUTO SUPERIOR TECNOLGICO PRIVADO IDAT PIURA

    Docente: Jaime Bolvar Arambulo Sistemas Operativos III Pgina 3

    Apache que establece UTF-8 como codificacin predefinida. Edite el fichero /etc/httpd/conf/httpd.conf y localice lo siguiente: AddDefaultCharset UTF-8 Cambie lo anterior por esto otro: AddDefaultCharset Off

    Ficheros de configuracin Cualquier ajuste que se requiera realizar, ya sea para configurar Sitios de Red virtuales u otra funcionalidad adicional, se puede realizar sin tocar el fichero principal de configuracin, utilizando cualquier fichero con extensin *.conf dentro del directorio /etc/httpd/conf.d/

    cd /etc/httpd/conf.d/

    Directorios virtuales Si, por ejemplo, se quisiera aadir el alias para un directorio localizado en /var/contenido/varios/ y el cual queremos visualizar como el directorio /varios/ en Apache, lo primero ser crear el directorio:

    mkdir -p /var/contenidos/varios

    mkdir -p /var/www/html/varios

    Y se crea un fichero que se denominar arbitrariamente como /etc/httpd/conf.d/aliases.conf con el siguiente contenido: alias /varios /var/contenidos/varios

    Si trata de acceder hacia este nuevo directorio virtual con el navegador, notar que no est permitido el acceso. Para poder acceder deber haber un documento ndice en el interior (index.html, index.php, etc) o bien que dicho directorio sea configurado para mostrar el contenido del siguiente modo: alias /varios /var/contenidos/varios

    Options Indexes

  • INSTITUTO SUPERIOR TECNOLGICO PRIVADO IDAT PIURA

    Docente: Jaime Bolvar Arambulo Sistemas Operativos III Pgina 4

    El parmetro Indexes indica que se deber mostrar el ndice de contenido del directorio. Si se requiere que este directorio tenga mayor funcionalidad, se pueden aadir ms opciones, como por ejemplo: Alias /varios /var/contenidos/varios

    Options Indexes Includes FollowSymLinks

    AllowOverride all

    El parmetro FollowSymLinks posibilita poder colocar enlaces simblicos dentro del directorio los cuales se seguirn. El parmetro Includes especifica que se permite la utilizacin de los SSI (Server Side Includes) que posibilitan utilizar funciones como autenticacin. El parmetro AllowOverride all posibilita utilizar ficheros .htaccess. Reinicie o recargue Apache y acceda hacia http://127.0.0.1/varios/ con cualquier navegador de red y visualice el resultado. Redireccin de directorios Cuando sea necesario, es posible configurar un directorio en particular para Apache redirija de modo transparente ste y su contenido hacia cualquier otra direccin.

    Redirect 301 /webmail http://mail.su-dominio.net/

    En el ejemplo anterior, se indica que si se trata de acceder hacia el subdirectorio /webmail en el servidor, Apache deber redirigir hacia http://mail.su-dominio.net/. El nmero 301 corresponde al mensaje del protocolo HTTP para indicar que la redireccin es permanente. Si por ejemplo hubiese un objeto en /webmail, como por ejemplo /webmail/estadisticas/estadisticas.php, Apache realizar el re-direccionamiento transparente hacia http://mail.su-dominio.net/estadisticas/estadisticas.php. Tipos de MIME Si por ejemplo se quisiera aadir algn tipo de extensin y tipo MIME, como por ejemplo Ogg, se podra generar un fichero que denominaremos arbitrariamente como el fichero /etc/httpd/conf.d/extensiones.conf con el siguiente contenido:

    AddType application/ogg .ogg

    AddDescription "Ogg Vorbis Audio" .ogg

    AddIcon /icons/sound2.png .ogg

    Soporte para CGI con extensin *.cgi Si se quisiera aadir que se reconociera la extensin *.cgi como un guin CGI (Common Gateway Interface), solo bastar aadir un fichero que denominaremos, arbitrariamente, /etc/httpd/conf.d/cgi.conf con el siguiente contenido: AddHandler cgi-script .cgi

  • INSTITUTO SUPERIOR TECNOLGICO PRIVADO IDAT PIURA

    Docente: Jaime Bolvar Arambulo Sistemas Operativos III Pgina 5

    Probando la configuracin Utilice el editor de texto de su preferencia para crear el fichero /var/www/cgi-bin/tiempo.cgi. Este deber llevar lo siguiente como contenido: #!/usr/bin/perl

    print "content-type: text/html\n\n";

    print scalar localtime;

    print "\n";

    Deberemos de cambiar el permiso del fichero anterior con la siguiente lnea de mandato: chmod 755 /var/www/cgi-bin/tiempo.cgi

    Utilice el navegador de red que prefiera y apunte ste hacia http://127.0.0.1/cgi-bin/tiempo.cgi. Si el navegador nos da una salida similar a la siguiente, se habr configurado exitosamente Apache para ejecutar guiones CGI: Tue Jul 05 22:10:41 2005

    Problemas posteriores

    Error ms comn nmero 1

    Forbidden

    You don't have permission to access /algun/directorio/guion.cgi on this server

    Significa que el archivo no cuenta con los permisos apropiados de lectura, escritura y

    ejecucin. La mayora guiones CGI que encontrar en Internet necesitarn al menos permiso 755

    para poder ser utilizados.

    Error ms comn nmero 2

    Internal Server Error

    The server encountered an internal error or misconfiguration and was unable to

    complete your request.

    Significa que hay problemas con el guin CGI en si y no con Apache. En la mayora de los casos

    se trata de ficheros que fueron elaborados desde un editor de texto en Windows, cuyo retorno de

    carro es distinto al de los sistemas operativos basados sobre UNIX, por lo cual se deber

    utilizar el mandato dos2unix sobre dichos ficheros. En otros casos, algo menos frecuente, se

    requerir que el administrador revise lnea por lnea para localizar un posible error o

    parmetro incorrecto. Cuando aplique, verifique que la primera lnea del guin que apunta hacia

    donde se encuentra el mandato perl sea correcta. Verifique tambin si el directorio que albergue

    el guin CGI requiere algn permiso en particular, como sera 777 en el caso de algunos guiones

    CGI.

  • INSTITUTO SUPERIOR TECNOLGICO PRIVADO IDAT PIURA

    Docente: Jaime Bolvar Arambulo Sistemas Operativos III Pgina 6

    Robo de imgenes

    Suele ocurrir que los administradores de algunos sitios encuentran fcil utilizar imgenes y

    otros tipos de contenido, vinculando desde sus documentos hacia los objetos en el servidor. Esto

    consume ancho de banda adicional y es una prctica poco tica. En el siguiente ejemplo,

    considerando que se tiene un directorio /var/www/html/imagenes, y se desea proteger ste para

    que solo se permita utilizar su contenido si es referido desde el mismo servidor, se utilizara

    lo siguiente:

    # Se permite al propio servidor

    SetEnvIf Referer "^http://www.tjaimebolivar.com/" local_referal

    # se permite aceder directamente a la imagen o bien si

    # no se especifica en el navegador la informacin de referente.

    SetEnvIf Referer "^$" local_referal

    Order Deny,Allow

    Deny from all

    Allow from env=local_referal

    La configuracin anterior puede aadirse en cualquier fichero *.conf dentro del directorio

    /etc/httpd/conf.d/.