Difference between revisions of "Apache HTTP Server (Español)"

From ArchWiki
Jump to: navigation, search
m (Configurar MySQL)
Line 101: Line 101:
 
Haz esto solo si quieres activar el soporte para MySQL
 
Haz esto solo si quieres activar el soporte para MySQL
  
* Edita <pre>/etc/php.ini</pre> (esta en <pre>/usr/etc</pre> en sistemas viejos) para descomentar las siquientes lineas:
+
* Edita <pre>/etc/php.ini</pre> y descomenta las siquientes lineas:
 
   <pre>;extension=mysql.so</pre>
 
   <pre>;extension=mysql.so</pre>
  
Line 118: Line 118:
 
   </pre>
 
   </pre>
  
If you trust the script, go on here:
+
Si tu confías en el script por defecto, prueba:
  
 
* Test mysql (as root):
 
* Test mysql (as root):
Line 124: Line 124:
 
   # mysql</pre>
 
   # mysql</pre>
  
* Create root password for mysql (at terminal, as root):
+
* Crea una password de root para mysql (en una terminal, como root):
 
   <pre># mysqladmin -u root password 'roots_password'</pre>
 
   <pre># mysqladmin -u root password 'roots_password'</pre>
  
* Add <pre>mysqld</pre> to the list of daemons in <pre>/etc/rc.conf</pre> (as for httpd above)
+
* Agrega <pre>mysqld</pre> a la lista de daemons en <pre>/etc/rc.conf</pre> (Sigue los ejemplos que ya hay en el archivo)
'''Or''' add this line in <pre>/etc/rc.local</pre>
+
'''O''' agrega esta linea a <pre>/etc/rc.local</pre>
 
   <pre># /etc/rc.d/mysqld start</pre>
 
   <pre># /etc/rc.d/mysqld start</pre>
  
* To login to mysql, type (at terminal, >hostname< as used in /etc/hosts)
+
* Para logearte a mysql, escribe (En una terminal, >hostname< reemplazalo segun la linea k tengas en  /etc/hosts)
 
   <pre># mysql -u root -h >hostname< -p</pre>
 
   <pre># mysql -u root -h >hostname< -p</pre>
  
* You can add minor privilegued users for your web scripts by editing the tables found in the "mysql" database. You have to restart mysql for changes to take effect.
+
* Tu puedes agregar usuarios con menos privilegios, para los scripts que deseees, editando las tablas que se encuentran en la base de datos "mysql". Deberas reiniciar el servicio para que los cambios tomen efectos.
<br>Don't forget to check the mysql/users table. If there's a second entry for root and your hostname left with no password set, everybody from your host probably could gain full access.
+
<br> 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 maquina probablemente podría ganar el acceso total.
<br>Perhaps see next section for these jobs.
+
<br>Talvez revisa la siguiente sección para revisar aquellas labores.
  
 
====Setup PHPMyAdmin====
 
====Setup PHPMyAdmin====

Revision as of 00:58, 29 July 2005

(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, optionalmente, 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 solo Apache, Apache y PHP, o los tres. Este documento asume que instalaras 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ñadelo al final de la linea:

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, solo deja localhost:

  #
  # Networking
  #
  HOSTNAME="localhost"
  
  • Ejecuta en una terminal (como root):
# /etc/rc.d/httpd start
  • Apache deberia ahora estar corriendo. Verificalo visitando http://localhost/ en un navegador web. Deberias ver una pagina simple de Arch Linux.
  • Edita
    /etc/rc.conf
    (para iniciar Apache en el arranque):
Daemons=(varios daemons ahora adiciona httpd)
O añade esta linea a
rc.local
:
# /etc/rc.d/httpd start
  • Si quieres activar los directorios de usuarios (ie: ~/public_html en la maquina es accesible como http://localhost/~user/) para estar disponibles en la web, descomenta las siquientes lineas 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>
  


Configurar PHP

PHP ahora esta disponible practicamente al instalarlo.

  • Descomenta esta linea 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>
  <p>
  This is Arch Linux, running PHP.
  </p>
  <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 configuracion.
  • Prueba PHP:
 http://localhost/test.php o http://localhost/~myname/test.php

Configurar MySQL

Haz esto solo si quieres activar el soporte para MySQL

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

Los dos siquiente 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< reemplazalo segun la linea k tengas en /etc/hosts)
# mysql -u root -h >hostname< -p
  • Tu puedes agregar usuarios con menos privilegios, para los scripts que deseees, editando las tablas que se encuentran en la base de datos "mysql". Deberas 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 maquina probablemente podría ganar el acceso total.
Talvez revisa la siguiente sección para revisar aquellas labores.

Setup PHPMyAdmin

If you or your users want to use PHPMyAdmin to access the database, you might like to go on:

  • Install the package
  # pacman -S phpmyadmin
  
  • Edit the configuration file to setup your needs:
    /home/httpd/html/phpMyAdmin/config.inc.php



Insert the according string to the PmaAbsoluteUri variable, so that it looks like follows

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


Fill in your mysql server's information. In PHPMyAdmin, multiple servers can be defined in the Servers array. To access your single mysql database, you have to edit the first entry; you can ignore the following ones.

On a regular system you only have to set auth_type to http. This means that phpMyAdmin directly uses the entered user and password to communicate with the mysql server, so it can't do stuff not allowed to the according mysql user.

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


Be aware of that other auth methods or writing any password to this file can seriously damage your database security. Per default this file is world-readable.

  • You can reach PHPMyAdmin with your webbrowser:
    http://>hostname</phpMyAdmin/