Sunteți pe pagina 1din 6

05/08/13 Configuracion Apache 2 en linux - Taringa!

www.taringa.net/posts/linux/7362686/Configuracion-Apache-2-en-linux.html 1/6
Configuracion Apache 2 en linux
Les dejo un tutorial para quien quiera tener su servidor
apache 2 en su casa corriendo bajo linux
El Servidor Web Apache
El servidor web apache es una de las aplicaciones estrella del mundo Linux. Es el servidor web ms implantado entre los
distintos servidores que ofertan servicios web en Internet.
Entre las caractersticas ms significativas destacamos:
Es modular
Capacidad para crear servidores virtuales
Capacidad para crear servidores seguros https
Capacidad para crear sitios privados
En este curso haremos uso de stas y otras caractersticas de apache.
Organizacin del sitio web
La organizacin que realizaremos de nuestro servidor Apache, ser la clsica en los sistemas Unix: la pgina web de la
intranet se almacenar en la carpeta raz del servidor web, las pginas de los usuarios se almacenarn en la carpeta home
de cada usuario y para albergar las pginas web de los distintos departamentos, lo ms prctico es crear nuevos usuarios
con el nombre del departamento.
Instalacin de Apache2
Disponer de un servidor web nos permitir alojar nuestras propias pginas y aplicaciones web de forma que den servicio
tanto desde dentro de la intranet como desde Internet. Sern la base que facilitar el acceso a la informacin.
apt-get install apache2
Con lo cual se instalarn los archivos necesarios para que funcione nuestro servidor web. Se instalar apache v2.
Configuracin de Apache
05/08/13 Configuracion Apache 2 en linux - Taringa!
www.taringa.net/posts/linux/7362686/Configuracion-Apache-2-en-linux.html 2/6
Los archivos de configuracin de apache2 se encuentran en la carpeta /etc/apache2. El archivo principal de configuracin
es /etc/apache2/apache2.conf. Antes de realizar cualquier cambio en este archivo, es conveniente realizar una copia de
seguridad del mismo ya que si apache encuentra algn error en el archivo de configuracin, no arrancar.
Se pueden configurar infinidad de parmetros. Aqu, para poner en marcha el servidor, editaremos el archivo apache2.conf
y aadiremos nicamente el siguiente parmetro:
ServerName www.ieslapaloma.com
Para que los PCs de la red local sepan que www.ieslapaloma.com es nuestro servidor web, debemos crear una entrada
'www' hacia su direccin IP en el servidor DNS. Si no, no quedar ms remedio que acceder utilizando la direccin IP del
servidor.
Arranque y parada del servidor web apache
El servidor web apache2, al igual que todos los servicios en Debian, dispone de un script de arranque y parada en la
carpeta /etc/init.d.
// Arrancar o reiniciar el servidor apache2
/etc/init.d/apache2 restart
// Parar el servidor apache
/etc/init.d/apache2 stop
Consultar la versin instalada
/usr/sbin/apache2 -v
Espacio web para la Intranet
Por defecto, la carpeta raiz del servidor web es la carpeta /var/www. Todos los documentos que se encuentren dentro de la
carpeta raz del servidor web, sern accesibles va web. Dentro del raiz de documentos crearemos la pgina web de
nuestra intranet.
Carpeta principal del servidor web (DocumentRoot)
- Carpeta raz del servidor web: /var/www
- Acceso a la web principal: http://ip-del-servidor http://nombre-del-servidor
Para acceder va web a la pgina almacenada en la carpeta raz del servidor, desde un navegador debemos acceder
directamente con la direccin IP a: http://ip-del-servidor o bien utilizando el nombre del mismo si tenemos el DNS
funcionando: http://nombre-del-servidor. Solamente si no tenemos el DNS funcionando, podemos aadir el nombre y la IP
en /etc/hosts para resolver localmente.
Desde el navegador debe aparecer un mensaje como el siguiente:
It works!
Lo que siempre funcionar es ir con la direccin IP. Ejemplo, si la direccin IP de nuestro servidor fuera 192.168.1.239,
podemos ir con el navegador a la direccin http://192.168.1.239 y obtendremos el mismo resultado. Podemos personalizar
nuestra pgina modificando el archivo index.html que hay dentro de la carpeta /var/www.
Archivos i directorios de configuracin
Los archivos de configuracin ms utilitzados son:
05/08/13 Configuracion Apache 2 en linux - Taringa!
www.taringa.net/posts/linux/7362686/Configuracion-Apache-2-en-linux.html 3/6
/etc/apache2/apache2.conf
/etc/apache2/ports.conf
La carpeta que contiene todas la webs disponibles esta en:
/etc/apache2/sites-available
Los enlaces simblicos que habilitan las pginas web estan en el directorio:
/etc/apache2/sites-enabled
Cofiguracin de los VirtualHost
Toda la configuracin de carpetas, nombres y puertos que puede el servidor mostrar se establece en el directorio
/etc/apache2/sites-available/
En el directorio /etc/apache2/sites-enabled deberan estar los enlaces simblicos a los sitos web que estan habilitados, o
sea los enlaces simbolicos a la carpeta /etc/apache2/sites-available/
Por defecto el fichero de configuracin es /etc/apache2/sites-available/default i su contenido debe ser algo parecido a :
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
ErrorLog /var/log/apache2/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog /var/log/apache2/access.log combined
Alias /doc/ "/usr/share/doc/"
<Directory "/usr/share/doc/">
Options Indexes MultiViews FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
Allow from 127.0.0.0/255.0.0.0 ::1/128
</Directory>
</VirtualHost>
05/08/13 Configuracion Apache 2 en linux - Taringa!
www.taringa.net/posts/linux/7362686/Configuracion-Apache-2-en-linux.html 4/6
En la carpeta /etc/apache2/sites-enabled creamos el enlace:
ln -s /etc/apache2/sites-available/default /etc/apache2/sites-enabled/default
Para que el apache2 cargue esta configuracin se debe indicar el el fichero de configuracin /etc/apache2/apache2.conf.
Se debe aadir/descomentar al final del fichero apache2.conf la lnia:
Include /etc/apache2/sites-enabled/
Opcionalmente podemos copiar la carpeta /var/www/apache-default a la carpeta /var/www/
Dominios Virtuales
Para que funcionen varios dominios virtuales en un host que tiene asociado los dominios a una nica IP se debe utilizar la
clusula NameVirtualHost y VirtualHost.
En /etc/apache2/sites-available vamos a tener un archivo por cada uno de nuestros sitios, que luego sern enlazados
dinmicamente desde /etc/apache2/sites-enabled
Cada uno de estos archivos (relacionados con cada sitio) van a vincular el contenido real del sitio web.
Vamos a los bifes, tengo dos dominios:
- www.uno.com
- www.dos.com
El dominio uno.com debe aceptar las consultas al puerto 80 pero redirigirlas al puerto 8080. El segundo, funciona solo en
el puerto 8080.
Creamos estos dos archivos y los enlazamos como dijimos:
/etc/apache2/sites-available# touch www.uno.com /etc/apache2/sites-available# touch www.dos.com /etc/apache2/sites-
available#cd ../sites-enabled /etc/apache2/sites-enabled#ln -s ../sites-available/www.uno.com uno /etc/apache2/sites-
enabled#ln -s ../sites-available/www.dos.com dos
Vamos a encontrar bajo este directorio tambin un archivo que es el que trae apache por defecto, este es el famoso It
works!.
Antes de ver cmo configurar cada uno de estos dominios vale la pena aclarar que la clusula NameVirtualHost debe ir en
uno solo de los archivos que se encuentren en /sites-available/ , esto le indica a apache que se estn utilizando varios
hostvirtuales. En nuestro caso lo vamos a incluir en www.uno.com pero podra ir en cualquiera.
Ahora s, veamos lo que ponemos en www.uno.com:
NameVirtualHost *:80 NameVirtualHost *:8080 <VirtualHost *:80>
ServerName www.uno.com
ServerAlias uno.com
DocumentRoot /var/www/sitiouno
<Directory /var/www/sitiouno>
AllowOverride All
Options MultiViews Indexes SymLinksIfOwnerMatch
Allow from All
</Directory>
# Redirigir a https
RewriteEngine On RewriteRule ^(.*)$ https://www.dos.com$1 [R,L]
</VirtualHost>
Ahora veamos el contenido del sitio www.dos.com
05/08/13 Configuracion Apache 2 en linux - Taringa!
www.taringa.net/posts/linux/7362686/Configuracion-Apache-2-en-linux.html 5/6
<VirtualHost *:8080> ServerName www.dos.com ServerAlias dos.com DocumentRoot/var/www/sitiodos<Directory
/var/www/sitiodos>
AllowOverride All
Options MultiViews Indexes SymLinksIfOwnerMatch
Allow from All
</Directory> </VirtualHost>
Solo queda reiniciar el apache2 y listo
Espacio web para cada usuario
Cada usuario del sistema dispondr de un espacio web que se almacena dentro de su carpeta home en una carpeta
llamada 'public_html'. Si dicha carpeta no existe, el propio usuario puede crearla y copiar dentro de ella su pgina web.
Los permisos recomendados para carpetas son 655 para que el 'grupo' y el 'resto' de usuarios tengan acceso de lectura y
as se puedan visualizar las pginas.
Para acceder va web a la pgina de un usuario, desde un navegador debemos acceder directamente con la direccin IP a:
http://ip-del-servidor/~login-usuario/
El caracter '~'comnmente conocido como gusanillo y que se obtiene con Alt Gr + 4 sirve para indicar a apache que debe
servir la pgina desde el home del usuario (en Linux el 'gusanillo' equivale a la carpeta home). Ejemplo, si hemos creado
un usuario javier y ste ha creado la carpeta /home/javier/public_html y ha copiado en ella su pgina web, desde cualquier
PC de la red podremos acceder a dicha carpeta yendo a la direccin http://ip-del-servidor/~javier/. Para que la pgina
aparezca automticamente, es necesario crear un archivo llamado index.html.
Carpetas web de los usuarios
- Carpeta web de javier: /home/javier/public_html
- Acceso a la web de javier: http://ip-del-servidor/~javier/
Para configurar el apache para habilitar el espacio web para usuarios se puede hacer de dos maneras. La primera creando
los enlaces simblicos:
cd /etc/apache2/mods-enabled
ln -s ../mods-available/userdir.conf userdir.conf
ln -s ../mods-available/userdir.load userdir.load
Segunda simplemente ejecutando
a2enmod userdir
Slo nos quedar reiniciar el apache
/etc/init.d/apache2 restart
Espacio web para los departamentos
Para proporcionar espacio web a los departamentos, lo ms sencillo es crear un usuario para cada departamento.
Podemos crear los usuarios: compras, produccion (sin acentos), etc... Al igual que cada usuario del sistema, dispondrn
de un espacio web dentro de su carpeta home en una carpeta llamada 'public_html'. Si dicha carpeta no existe, habr que
crearla y copiar dentro de ella la pgina web del departamento.
Para acceder va web a la pgina del departamento, desde un navegador debemos acceder directamente con la direccin
IP a: http://ip-del-servidor/~departamento. Ejemplo, si hemos creado un usuario compras y hemos creado la carpeta
/home/compras/public_html y copiado en ella la web del departamento de compras, desde cualquier PC de la red
podremos acceder a dicha web yendo a la direccin http://ip-del-servidor/~compras. Para que la pgina aparezca
automticamente, es necesario crear un archivo llamado index.html.
Carpetas web de los departamentos
05/08/13 Configuracion Apache 2 en linux - Taringa!
www.taringa.net/posts/linux/7362686/Configuracion-Apache-2-en-linux.html 6/6
- Carpeta web del dpto. de compras: /home/compras/public_html
- Acceso a la web de dpto. de compras: http://ip-del-servidor/~compras/
De la misma manera, se pueden crear usuarios para proporcionar espacio web a otros rganos, p.ej: equipodirectivo,
conserjeria, etc... para que dispongan de su propio espacio web.

S-ar putea să vă placă și