apache http y moodle
Post on 13-Jun-2015
487 Views
Preview:
TRANSCRIPT
aaaaa
Fco Javier Mejías Fernández
APACHE-HTTP 2
Aaaaa
Fco Javier Mejías Fernández
Contenido
ESCENARIO 1: Configura dos Virtual Hosts con distinto interfaz, mismo puerto ...................... 3
ESCENARIO 2: Configura dos Virtual Hosts con mismo interfaz, distinto puerto ...................... 7
ESCENARIO 3: Configura dos Virtual Hosts con mismo interfaz, mismo puerto y distinto
nombre: sitio1.es y sitio2.es..................................................................................................... 10
Instalacion del moodle y con figuracion de un sitio con HTTPS y SSL...................................... 14
Configurar apache2 para que pueda cachear y comprimir. .................................................... 18
Configuración del cacheado ................................................................................................. 18
Configuración para comprimir.............................................................................................. 20
APACHE-HTTP Fco Javier Mejías Fernández
APACHE-HTTP – Fco Javier Mejías Fernández 3
3
ESCENARIO 1: Configura dos Virtual Hosts con distinto interfaz,
mismo puerto
También podremos pondremos poner dos solo-anfitrión, pero para ello tendremos que agregar otra
tarjeta y configurar la ip, para ello nos dirigimos a el fichero /etc/network/interfaces.
Red 1: solo-anfitrión.
En esta tarjeta que tendremos que agregar manualmente pondremos la 56.1 ya que qe es la que tendra
virtalmete la maquina real.
APACHE-HTTP – Fco Javier Mejías Fernández 4
4
Red 2: adaptador puente.
Configuración del fichero interface en el debían apache para crear dos virtualhost con distinta interface.
Los pasos que seguiremos para crear el escenario de esta práctica serán los siguientes,
pudiéndose hacer en otro orden, en mí caso lo haremos de esta manera:
En primer lugar Configuraremos el fichero ports.conf, que lo encontramos en /etc/apache2/:
Una vez dentro del fichero añadimos las siguientes líneas. En el primero tendremos que poner la ip de
la eth0 que en este caso será el sitio1 y en el segundo pondremos la ip de la eth1 que será el sitio2,
que posteriormente tendremos que definir en el archivo que crearemos de cada zona:
Ahora crearemos los ficheros de cada sitio:
Para ello nos dirigimos al fichero sites-available, y como es el primero que crearemos lo que podemos
hacer es copiar el 000-default y posteriormente modificarlo:
APACHE-HTTP – Fco Javier Mejías Fernández 5
5
Sitio1:
Luego creamos las carpetas descriptas en el DocumentRoot y en el Directory que son la misma
dirección, para ello nos dirigimos a /var/www/:
Creamos la carpeta del sitio:
mkdir sitio1
Y dentro un fichero de bienvenida, como por ejemplo el siguiente:
nano index.html
Luego realizamos el mismo proceso con el sitio2:
Sitio2:
APACHE-HTTP – Fco Javier Mejías Fernández 6
6
Luego creamos las carpetas descriptas en el sitio en /var/www/:
mkdir sitio1
Creamos la carpeta del sitio:
nano index.html
Y dentro un fichero de bienvenida, como por ejemplo el siguiente:
Una vez creado los sitos y las carpetas habilitamos los dos módulos desde la carpeta sites-
available, con el comando a2ensite:
a2ensite sitio1
Y confirmamos que se han habilitados dirigiéndonos a la carpeta sites-enabled:
Por ultimo reiniciamos el servicio apache:
service apache2 restart
APACHE-HTTP – Fco Javier Mejías Fernández 7
7
Luego hacemos las comprobaciones mediante el navegador:
ESCENARIO 2: Configura dos Virtual Hosts con mismo interfaz,
distinto puerto
Configuración del fichero interface en el debían apache para crear dos virtualhost con misma interface,
para ello nos dirigimos a el fichero /etc/network/interfaces.
Posteriormente nos dirigimos al fichero ports.conf donde configuraremos los VirtualHost de
cada sitio, ese fichero lo encontramos en /etc/apache2/.
Dentro configuramos los puertos para cada sitio, en este caso asignaremos el puesto 80 al sitio1 y el
8080 al sitio2, quedando el fichero de esta manera:
APACHE-HTTP – Fco Javier Mejías Fernández 8
8
Luego nos dirigimos a /etc/apache2/sites-available/ y creamos los ficheros de cada sitio,
quedando el contenido de cada sitio de esta manera, es importante asignar el puerto
correctamente en cada sitio:
Sitio1:
En el sitio asignamos el puesto 80:
Luego creamos las carpetas descriptas en el sitio en /var/www/:
Creamos la carpeta del sitio:
mkdir sitio1
Y dentro un fichero de bienvenida, como por ejemplo el siguiente:
nano index.html
APACHE-HTTP – Fco Javier Mejías Fernández 9
9
Sitio2:
En el sitio2 asignamos el puerto 8080:
Luego creamos las carpetas descriptas en el sitio en /var/www/:
Creamos la carpeta del sitio:
mkdir sitio2
Y dentro un fichero de bienvenida, como por ejemplo el siguiente:
nano index.html
Una vez creado los dos sitios los habilitamos con el comando a2ensite, esto lo haremos
desde la carpeta /etc/apache2/sites-available/:
a2ensite sitio1
APACHE-HTTP – Fco Javier Mejías Fernández 10
10
Y comprobamos que se han habilitado correctamente, para ello nos dirigimos a la carpeta sites-
enabled:
Por ultimo reiniciamos el servicio apache:
service apache2 restart
Una vez terminado podremos comprobarlo mediante un navegador web:
ESCENARIO 3: Configura dos Virtual Hosts con mismo interfaz,
mismo puerto y distinto nombre: sitio1.es y sitio2.es
APACHE-HTTP – Fco Javier Mejías Fernández 11
11
Configuración del fichero interface en el debían apache para crear dos virtualhost con misma interface,
para ello nos dirigimos a el fichero /etc/network/interfaces.
Posteriormente nos dirigimos al fichero ports.conf donde configuraremos los VirtualHost de
cada sitio, ese fichero lo encontramos en /etc/apache2/.
Dentro del fichero asignamos la ip del servidor apache y el puerto.
Luego nos dirigimos a /etc/apache2/sites-available/ y creamos los ficheros de cada sitio,
quedando el contenido de cada sitio de esta manera, en este caso es importante especificar
el nombre del sitio correctamente:
Sitio1:
Luego creamos las carpetas descriptas en el DocumentRoot y en el Directory que son la misma
dirección, para ello nos dirigimos a /var/www/:
APACHE-HTTP – Fco Javier Mejías Fernández 12
12
Creamos la carpeta del sitio:
mkdir sitio1
Y dentro un fichero de bienvenida, como por ejemplo el siguiente:
nano index.html
Sitio2:
Luego creamos las carpetas descriptas en el sitio en /var/www/:
Creamos la carpeta del sitio:
mkdir sitio2
Y dentro un fichero de bienvenida, como por ejemplo el siguiente:
nano index.html
APACHE-HTTP – Fco Javier Mejías Fernández 13
13
Una vez creado los dos sitios los habilitamos con el comando a2ensite, esto lo haremos
desde la carpeta /etc/apache2/sites-available/:
a2ensite sitio1
Y comprobamos que se han habilitado correctamente, para ello nos dirigimos a la carpeta sites-
enabled:
Una vez creado los sitios reiniciamos el servicio apache:
service apache2 restart
Por ultimo nos dirigimos a Windows y configuramos el fichero Hosts, que se encuentra en
esta dirección C:\Windows\System32\drivers\etc\hosts, este fichero lo tendremos que
ejecutar como administrador para poder modificarlo. En el añadimos las siguientes lineas:
APACHE-HTTP – Fco Javier Mejías Fernández 14
14
Una vez terminado podremos comprobarlo mediante un navegador web:
Instalacion del moodle y con figuracion de un sitio con HTTPS y SSL
Para ello devemos descargarnos el fichero .tar de la página oficial de moodle.
una vez descardo lo pasaremos al debian para ello utilizaremos FTP, que instalaremos con el siguinte
comando:
apt-get install vsftpd
y crearemos un usuario para poder pasarlos mediante el Filezilla
adduser usuario
Posteriormente con el filezilla metemos la dirección ip del servidor debían el usuario y la contraseña,
luego solo tendremos que pasar el fichero del filezilla a la carpeta del usuario.
Una vez que ya lo tenemos en el debían lo descomprimimos con el siguiente comando:
tar –xvf nombre_del_paquete_moodle
Una vez descomprimido se nos creara una carpeta moodle, que tendremos que moverla al fichero del
sitio1:
Para mover la carpeta de moodle hacemos lo siguiente, es importante que tengamos la carpeta creada
en la carpeta del sitio:
mv /moodle/* /var/www/sitio1/moodle
APACHE-HTTP – Fco Javier Mejías Fernández 15
15
Una vez que hemos pasado el contenido de la carpeta, lo comprobamos dirigiéndonos a ella y mirando
su contenido que tendrá que ser el siguiente:
Luego tendremos que dale los permisos a la carpeta /var/www/ para que apache puede leerlos, lo
haremos de la siguiente manera:
chmod 777 /var/www/*
Una vez descomprimido, ya moodle, pasamos a instalar las dependencia que son las
siguientes:
apt-get install php5
apt-get install mysql-server
apt-get install curl
apt-get install php5-curl
apt-get install php5-mysql
apt-get install phpmyadmin
Para crear un sitio en https lo primero que tenemos que hacer el habilitar el modulo SSL, lo
haremos con el siguiente comando:
a2enmod ssl
APACHE-HTTP – Fco Javier Mejías Fernández 16
16
Una vez habilitados el módulos pasamos a crear el sitio, para ello nos dirigimos a
/etc/apache2/sites-available y creamos un fichero moodle con el contenido de defaul-ssl, es
importante copiar el contenido de ese fichero ya que es el que nos proporciona que el sitio
sea seguro:
cp default-ssl moodle
Luego el contenido que tenemos que agregar para crear el sitio moodle:
Una vez creado el sitio lo habilitamos con el siguiente comando:
a2enmod moodle
Luego comprobamos que sea habilitado correctamente, para ello nos vamos a la carpeta sites-enable
y miramos su contenido donde deberá aparecer moodle
En este caso la configuración del fichero ports.conf, no deberemos de tocarla ni añadir
ningún NameVirtuasHost para el puerto 443, ya que en este caso ese puerto está asignado
por defecto en este fichero.
APACHE-HTTP – Fco Javier Mejías Fernández 17
17
Una vez comprobado reiniciamos el servicio apache con el siguiente comando:
service apache2 restart
Por ultimo nos dirigimos a Windows y configuramos el fichero Hosts, que se encuentra en
esta dirección C:\Windows\System32\drivers\etc\hosts, este fichero lo tendremos que
ejecutar como administrador para poder modificarlo. En el añadimos las siguientes líneas:
Una vez hecho todo lo comprobamos median web, escribiendo https://moodle.sitio1.es, una
vez dentro nos saldrá una pantalla donde tenemos que aceptar un certificado :
APACHE-HTTP – Fco Javier Mejías Fernández 18
18
Una vez llegado a este punto solo tendremos que configurar el moodle con la configuración
deseada.
Configurar apache2 para que pueda cachear y comprimir.
Configuración del cacheado
En primer lugar vamos a realizar la configuración del cacheado, para un sitio ya creado en
puntos anteriores. En este caso tenemos tres módulos que son:
El mod_file_cache es el menos flexible de los tres. Sirve para cachear ficheros
concretos en disco o memoria, pero si modificamos alguno de dichos ficheros sólo
podremos conseguir que Apache sirva la versión actualizada con un reinicio del
gestor.
El mod_mem_cache nos permite cachear los ficheros en memoria. Sin embargo,
lo que teóricamente podría suponer una gran mejora de rendimiento del servidor,
puede quedarse en mucho menos por dos motivos In-Memory Caching.
El mod_disk_cache va almacenando en un directorio los documentos que se van
solicitando, así como sus cabeceras. Si el mod_deflate está activo y hay unos
clientes que aceptan compresión y otros que no, se cacheará el documento
comprimido y sin comprimir. Por supuesto, no debemos olvidar que la caché del
sistema operativo está actuando, así que estos ficheros de caché, si hay memoria
suficiente, también serán cacheados en memoria por el kernel.
En este caso vamos a utilizar Disk_cache que es el más eficiente, para habilitarlos seguimos
los siguientes pasos:
Primero nos dirigimos a la carpeta de módulos de apache que es la siguiente
/etc/apache2/mods-available / en ella encontramos todos los módulos que podemos
habilitar, para habilitar el que queremos utilizamos el siguiente comando:
APACHE-HTTP – Fco Javier Mejías Fernández 19
19
a2enmod disk_cache
Una vez habilitado nos dirigimos a /etc/apache2/mod-enabled/disk_cache.conf, en este fichero tendremos que descomentar la línea CacheEnable disk/, quedando en
fichero de esta manera:
Posteriormente nos dirigimos al fichero del sitio en la carpeta /etc/apache2/sites-
enabled/sitio, y añadimos la misma línea, quedando el fichero de la siguiente manera:
APACHE-HTTP – Fco Javier Mejías Fernández 20
20
Por ultimo reiniciamos el servidor apache:
servicio apacher2 restart
La carpeta donde se almacena el contenido por defecto es la siguiente
/var/cache/apache2/mod_disk_cache.
Configuración para comprimir
Vamos a realizar la configuración para que un sitio para que apache comprima el contenido
de una página web.
En primer lugar vamos a habilitar el módulo, para ello nos dirigimos a la carpeta
/etc/apache2/mods-available/, en ella encontramos los módulos que podemos
habilitar en este caso será deflate, para ello utilizamos el siguiente comando:
a2enmod deflate
Una vez habilitado el módulo nos dirigimos al fichero de configuración que se encuentra
en la siguiente dirección /etc/apache2/mods-enable/defate.conf, en el debemos
comprobar que aparezcan las siguientes líneas, en caso de no aparecer añadir las
faltantes:
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE text/javascript
APACHE-HTTP – Fco Javier Mejías Fernández 21
21
AddOutputFilterByType DEFLATE image/svg+xml
AddOutputFilterByType DEFLATE image/x-icon
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/x-javascript
Una vez que el archivo este configurado correctamente reiniciamos el servicio apache:
service apache2 restart
top related