Apache HTTP Server (Español)

From ArchWiki
Revision as of 20:17, 26 April 2008 by Ant21 (Talk | contribs) (Deleted Spanish i18n auto-link)

Jump to: navigation, search

Template:I18n links start Template:I18n entry Template:I18n entry Template:I18n entry Template:I18n entry Template:I18n entry Template:I18n links end

(This wiki post copied from: http://bbs.archlinux.org/viewtopic.php?t=2409)

(This is going to be the translation of this Document to Spanish) (Esta será la traducción de este documento al español)

Apache, PHP, y MySQL

Este documento describe como configurar el servidor web Apache en un sistema Arch Linux. Además explica como, opcionalmente, instalar PHP y MySQL e integrarlos con Apache.

Instalar Paquetes

  # pacman -Sy
  # pacman -S apache
  # pacman -S php
  # pacman -S mysql
  

Si lo deseas, puedes instalar sólo Apache, Apache y PHP, o los tres. Este documento asume que instalarás los tres, pero si quieres, puedes detenerte luego de cualquiera de las secciones.


Configurar Apache

  • Añade la siguiente linea a
    /etc/hosts
    (Si el fichero no existe debes crearlo)
127.0.0.1  localhost.localdomain   localhost

Nota: Si deseas un hostname diferente, añádelo al final de la línea:

127.0.0.1  localhost.localdomain   localhost myhostname
  • Edita
    /etc/rc.conf
    :

Si defines un hostname en el paso 2, la variable HOSTNAME debe ser igual. Si no, deja solamente localhost:

  #
  # Networking
  #
  HOSTNAME="localhost"
  
  • Ejecuta en una terminal (como root):
# /etc/rc.d/httpd start
  • Apache debería ahora estar corriendo. Verifícalo visitando http://localhost/ en un navegador web. Deberías ver una página simple de Arch Linux.
  • Edita
    /etc/rc.conf
    (para iniciar Apache en el arranque):
Daemons=(varios daemons ahora adiciona httpd)
O añade esta línea a
rc.local
:
# /etc/rc.d/httpd start
  • Si quieres activar los directorios de usuarios (ie: ~/public_html en la máquina es accesible como http://localhost/~user/) para estar disponibles en la web, descomenta las siquientes líneas en /etc/httpd/conf/httpd.conf:
UserDir public_html

y

  <Directory /home/*/public_html>
    AllowOverride FileInfo AuthConfig Limit Indexes
    Options MultiViews Indexes SymLinksIfOwnerMatch ExecCGI
    <Limit GET POST OPTIONS PROPFIND>
      Order allow,deny
      Allow from all
    </Limit>
    <LimitExcept GET POST OPTIONS PROPFIND>
      Order deny,allow
      Deny from all
    </LimitExcept>
  </Directory>
  

asegúrate que apache puede ingresar al directorio de tu home

 chmod 711 /home/user

Configurar PHP

PHP ahora esta disponible prácticamente al instalarlo.

  • Descomenta esta línea en
    /etc/httpd/conf/httpd.conf
#LoadModule php4_module /usr/lib/apache/libphp4.so
  • Reinicia el servidor Apache para que los cambios tengan efecto (como root):
# /etc/rc.d/httpd restart
  • Prueba PHP con un simple, pero muy informativo script:
  <html>
  <title>This is Arch Linux, running PHP.</title>
  <body>
  <p>
  <?php
    phpinfo();
  ?>
  </p>
  </body>
  </html>
  
Guarda este archivo como "test.php" y copialo en
/home/httpd/html/
o en
~/public_html
si lo permitiste en la configuración.
  • Prueba PHP:
 http://localhost/test.php o http://localhost/~myname/test.php

Configurar MySQL

Haz ésto sólo si quieres activar el soporte para MySQL

  • Edita
    /etc/php.ini
    y descomenta las siquientes líneas:
;extension=mysql.so

Los dos siquientes pasos debes hacerlos la primera vez que inicies /etc/rc.d/mysql. Hecha un vistazo a este archivo, si no estás seguro.

  • Puedes necesitar configurar una contraseña y un grupo para mysql:
  • Añade un grupo llamado mysql
# groupadd -g 89 mysql
  • Añade el usuario mysql
# useradd -u 89 -g mysql -d /var/lib/mysql -s /bin/false mysql
  • Run in a root terminal (you don't need the --user option and chown if you let it run as root):
  # mysql_install_db --user=mysql
  # chown -R mysql.mysql /var/lib/mysql
  

Si tu confías en el script por defecto, prueba:

  • Test mysql (as root):
# /etc/rc.d/mysqld start
  # mysql
  • Crea una password de root para mysql (en una terminal, como root):
# mysqladmin -u root password 'roots_password'
  • Agrega
    mysqld
    a la lista de daemons en
    /etc/rc.conf
    (Sigue los ejemplos que ya hay en el archivo)
O agrega esta linea a
/etc/rc.local
# /etc/rc.d/mysqld start
  • Para logearte a mysql, escribe (En una terminal, >hostname< reemplázalo según la linea que tengas en /etc/hosts)
# mysql -u root -h >hostname< -p
  • Tu puedes agregar usuarios con menos privilegios, para los scripts que desees, editando las tablas que se encuentran en la base de datos "mysql". Deberás reiniciar el servicio para que los cambios tomen efectos.


No olvides chequear la tabla de mysql/users. Si existe una segunda entrada para el root y tu hostname sin ninguna clave establecida, cualquier persona de tu máquina probablemente podría ganar el acceso total.
Tal vez revisa la siguiente sección para revisar aquellas labores.

Configurar PHPMyAdmin

Si tú o tus usuarios quieren usar [http://www.phpmyadmin.net PHPMyAdmin, podrías proceder de la siguiente manera:

  • Instala el paquete
  # pacman -S phpmyadmin
  
  • Edita el archivo de configuración para adaptarlo a tus necesidades:
    /home/httpd/html/phpMyAdmin/config.inc.php



Inserta la cadena correspondiente a la variable PmaAbsoluteUri para que sea parecida a:

$cfg[['PmaAbsoluteUri']] = 'http://>hostname</phpMyAdmin/';


Rellena la información de tu servidor MySQL. En PHPMyAdmin, se pueden definir multiples servidores en el arreglo 'Servers'. Para acceder a tu base de datos MySQL, tienes que editar la primera entrada; puedes ignorar las demás. En un sistema normal sólo tienes que asignar el auth_type a http. Esto hace que PHPMyAdmin use el usuario y contraseñas ingresados por el navegador web para acceder al servidor de bases de datos, de esa manera, no se pueden realizar acciones que no estén permitidas para dicho usuario del servidor MySql.

$cfg[['Servers']][[$i]][['auth_type']]     = 'http';


Advertencia:otros métodos de autorización o el escribir contraseñas directamente en este archivo puede dañar la seguridad de la base de datos. Por defecto, este archivo es legible para todo el mundo.

  • Para usar PHPMyAdmin apunta tu navegador web a:
    http://>hostname</phpMyAdmin/