Diferencia entre revisiones de «Apache2»
m |
|||
(No se muestran 22 ediciones intermedias de 5 usuarios) | |||
Línea 1: | Línea 1: | ||
− | === | + | ====Instalación==== |
+ | Paquetes: apache2. En tasksel, la tarea lamp-server incluye paquetes de Apache, junto con otros. | ||
+ | "LAMP is an acronym for a solution stack of free, open source software, originally coined from the first letters of Linux (operating system), Apache HTTP Server, MySQL (database software) and Perl/PHP/Python" (Wikipedia). | ||
+ | |||
+ | Arrancar y detener apache: | ||
+ | /etc/init.d/apache2 stop | ||
+ | /etc/init.d/apache2 start | ||
+ | |||
+ | Probamos instalación con página por defecto de apache: | ||
+ | navegador hacia http://localhost o http://127.0.0.1 | ||
+ | |||
+ | Página por defecto. | ||
+ | No es necesario si se van a usar dominios virtuales. | ||
+ | |||
+ | Cambio en /etc/apache2/sites-available/default: | ||
+ | Comentar la línea | ||
+ | #RedirectMatch ^/$ /index.html | ||
+ | porque viene con otra página por defecto. | ||
+ | El cambio lleva a /var/www/index.html; raíz es /var/www. | ||
+ | Crear una página /var/www/index.html para el sitio o para prueba. | ||
+ | |||
+ | ====Configuración==== | ||
+ | |||
+ | Dominios virtuales: crea dominios virtuales que se navegan con su propio URL pero están en esta misma máquina. | ||
+ | Ejemplo: | ||
+ | * Dominios: wiki.dompolonio.taller.curerocha.edu.uy, www.dompolonio.taller.curerocha.edu.uy. | ||
+ | * Servidor: dompolonio. | ||
+ | * DNS accesible para poder resolver los nombres de los dominios virtuales como alias de esta máquina, donde están soportados esos dominios. | ||
+ | |||
+ | Los nombres wiki.dompolonio.taller.curerocha.edu.uy, www.dompolonio.taller.curerocha.edu.uy, deben resolverse vía DNS; estos comandos deben contestar los IP o nombre de máquina correctos: | ||
+ | host wiki.dompolonio.taller.curerocha.edu.uy | ||
+ | host www.dompolonio.taller.curerocha.edu.uy | ||
+ | |||
+ | El DNS debe soportar las zonas auda.org.uy y nsk.com.uy. Requiere en los archivos de zona del DNS las líneas | ||
+ | ; en la zona nsk.com.uy | ||
+ | www IN CNAME nautilus | ||
+ | |||
+ | ; en la zona auda.org.uy | ||
+ | auda IN CNAME nautilus | ||
+ | |||
+ | Directorio de páginas de los dominios virtuales. Crear en /var/www un subdirectorio para cada dominio virtual: | ||
+ | mkdir /var/www/nsk /var/www/auda | ||
+ | Crear páginas de prueba HTML para cada dominio virtual: | ||
+ | * /var/www/nsk/index.html | ||
+ | * /var/www/auda/index.html | ||
+ | |||
+ | Los sitios disponibles están en /etc/apache2/sites-available. | ||
+ | Los sitios habilitados son enlaces simbólicos en /etc/apache2/sites-enabled. | ||
+ | |||
+ | Crear el archivo /etc/apache2/sites-available/website. | ||
+ | El número IP es el de la máquina donde está el Apache. | ||
+ | |||
+ | user@polonio:~$ cat /etc/apache2/sites-available/website | ||
+ | #/etc/apache2/sites-available/website | ||
+ | ... | ||
+ | <VirtualHost *:80> | ||
+ | |||
+ | NameVirtualHost 164.73.234.111 | ||
+ | ServerAdmin polonio@polonio.dompolonio.taller.curerocha.edu.uy | ||
+ | DocumentRoot /var/www/dompolonio/ | ||
+ | ServerName www.dompolonio.taller.curerocha.edu.uy | ||
+ | </VirtualHost> | ||
+ | |||
+ | |||
+ | ... | ||
+ | |||
+ | Deshabilitar el sitio por defecto 'default', Habilitar los nuevos sitios 'website', recargar Apache: | ||
+ | a2dissite default | ||
+ | a2ensite website | ||
+ | /etc/init.d/apache2 restart | ||
+ | |||
+ | |||
+ | |||
+ | '''Notas:''' | ||
+ | * archivo de configuración individual para cada host virtual: es posible (y quizás preferible) para cada sitio virtual copiar, en el directorio /etc/apache2/sites-available, el archivo 'default' hacia otro con el nombre del nuevo sitio, y modificar lo necesario. Se tiene así tener un archivo de configuración por cada sitio. | ||
− | |||
− | |||
− | |||
− | |||
===Instalación=== | ===Instalación=== | ||
Línea 11: | Línea 81: | ||
aptitude install apache2 | aptitude install apache2 | ||
− | Primer prueba: desde un navegador visitar la página: http://servidor.apache/ | + | Primer prueba: desde un navegador visitar la página: <nowiki>http://servidor.apache/</nowiki> |
− | donde "servidor.apache" es la IP del servidor, o un nombre de domínio que resuelve a ésta. (si el servidor tiene un navegador, puede | + | donde "servidor.apache" es la IP del servidor, o un nombre de domínio que resuelve a ésta. (si el servidor tiene un navegador, puede ser: <nowiki>http://localhost/</nowiki>) |
Debemos entonces ver aparecer una página de prueba: "It works!" | Debemos entonces ver aparecer una página de prueba: "It works!" | ||
Línea 51: | Línea 121: | ||
Esto requerirá, además, un certificado válido y la configuración de un sitio en https. Un certificado autofirmado se puede obtener instalando ssl-cert, y un sitio activando: | Esto requerirá, además, un certificado válido y la configuración de un sitio en https. Un certificado autofirmado se puede obtener instalando ssl-cert, y un sitio activando: | ||
a2ensite default-ssl | a2ensite default-ssl | ||
+ | |||
+ | * Instalación de openssl y ssl-cert | ||
+ | |||
+ | $ apt-get install openssl ssl-cert | ||
+ | |||
+ | * Crear los certificados: | ||
+ | |||
+ | $ a2enmod ssl | ||
+ | $ mkdir /etc/apache2/ssl | ||
+ | $ /usr/sbin/make-ssl-cert /usr/share/ssl-cert/ssleay.cnf /etc/apache2/ssl/apache.pem | ||
as2enmod, sin parámetro, muestra la lista de módulos disponibles. | as2enmod, sin parámetro, muestra la lista de módulos disponibles. | ||
Línea 64: | Línea 144: | ||
− | |||
− | |||
− | |||
− | == | + | ==Procedimiento== |
− | + | ===Crear "vhosts" para la web de presentación y la tikiwiki=== | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | * vhost para | + | * vhost para tikiwiki |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
En el vhost (y en el DNS) definimos ServerName y ServerAlias | En el vhost (y en el DNS) definimos ServerName y ServerAlias | ||
ServerName tikiwiki.taller.curerocha.edu.uy | ServerName tikiwiki.taller.curerocha.edu.uy | ||
− | ServerAlias | + | ServerAlias wiki.dompolonio.taller.curerocha.edu.uy |
+ | ==Verificación== | ||
− | * | + | * Para verificar que por default rediriga a la wiki del CURE, haremos lo siguiente. En un navegador probaremos las siguiente direcciones y debe redirigir a la wiki. |
+ | <pre> | ||
− | + | http://wiki.dompolonio.taller.curerocha.edu.uy | |
+ | http://www.dompolonio.taller.curerocha.edu.uy | ||
+ | http://164.73.234.111 | ||
+ | </pre> | ||
− | + | * La otra verificación pertinente a este tema es comprobar el acceso a phpmyadmin. | |
− | + | <pre> | |
− | + | http://www.dompolonio.taller.curerocha.edu.uy/phpmyadmin | |
− | + | </pre> | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
==Notas adicionales== | ==Notas adicionales== | ||
+ | [[Autentificación, Autorización y Control de Acceso con Apache2]]<br> | ||
[[DNS-apache]] | [[DNS-apache]] | ||
Línea 142: | Línea 188: | ||
(www.apache.org es el de la fundación, que también tiene otros proyectos, como Tomcat, por ejemplo) | (www.apache.org es el de la fundación, que también tiene otros proyectos, como Tomcat, por ejemplo) | ||
Ver en particular: | Ver en particular: | ||
− | |||
− | + | :La documentación: http://httpd.apache.org/docs/2.2/ | |
+ | |||
+ | :El manejo de hospedajes virtuales: http://httpd.apache.org/docs/2.2/vhosts/ | ||
+ | :Las reglas de re-escritura de URLS: http://httpd.apache.org/docs/2.2/rewrite/ | ||
− | + | [[Category:Descontinuadas]] |
Revisión actual - 16:36 14 ene 2022
Instalación
Paquetes: apache2. En tasksel, la tarea lamp-server incluye paquetes de Apache, junto con otros. "LAMP is an acronym for a solution stack of free, open source software, originally coined from the first letters of Linux (operating system), Apache HTTP Server, MySQL (database software) and Perl/PHP/Python" (Wikipedia).
Arrancar y detener apache:
/etc/init.d/apache2 stop /etc/init.d/apache2 start
Probamos instalación con página por defecto de apache:
navegador hacia http://localhost o http://127.0.0.1
Página por defecto. No es necesario si se van a usar dominios virtuales.
Cambio en /etc/apache2/sites-available/default: Comentar la línea
#RedirectMatch ^/$ /index.html
porque viene con otra página por defecto. El cambio lleva a /var/www/index.html; raíz es /var/www. Crear una página /var/www/index.html para el sitio o para prueba.
Configuración
Dominios virtuales: crea dominios virtuales que se navegan con su propio URL pero están en esta misma máquina. Ejemplo:
- Dominios: wiki.dompolonio.taller.curerocha.edu.uy, www.dompolonio.taller.curerocha.edu.uy.
- Servidor: dompolonio.
- DNS accesible para poder resolver los nombres de los dominios virtuales como alias de esta máquina, donde están soportados esos dominios.
Los nombres wiki.dompolonio.taller.curerocha.edu.uy, www.dompolonio.taller.curerocha.edu.uy, deben resolverse vía DNS; estos comandos deben contestar los IP o nombre de máquina correctos:
host wiki.dompolonio.taller.curerocha.edu.uy host www.dompolonio.taller.curerocha.edu.uy
El DNS debe soportar las zonas auda.org.uy y nsk.com.uy. Requiere en los archivos de zona del DNS las líneas
; en la zona nsk.com.uy www IN CNAME nautilus
; en la zona auda.org.uy auda IN CNAME nautilus
Directorio de páginas de los dominios virtuales. Crear en /var/www un subdirectorio para cada dominio virtual:
mkdir /var/www/nsk /var/www/auda
Crear páginas de prueba HTML para cada dominio virtual:
- /var/www/nsk/index.html
- /var/www/auda/index.html
Los sitios disponibles están en /etc/apache2/sites-available. Los sitios habilitados son enlaces simbólicos en /etc/apache2/sites-enabled.
Crear el archivo /etc/apache2/sites-available/website. El número IP es el de la máquina donde está el Apache.
user@polonio:~$ cat /etc/apache2/sites-available/website
#/etc/apache2/sites-available/website
...
<VirtualHost *:80>
NameVirtualHost 164.73.234.111 ServerAdmin polonio@polonio.dompolonio.taller.curerocha.edu.uy DocumentRoot /var/www/dompolonio/ ServerName www.dompolonio.taller.curerocha.edu.uy </VirtualHost>
...
Deshabilitar el sitio por defecto 'default', Habilitar los nuevos sitios 'website', recargar Apache:
a2dissite default a2ensite website /etc/init.d/apache2 restart
Notas:
- archivo de configuración individual para cada host virtual: es posible (y quizás preferible) para cada sitio virtual copiar, en el directorio /etc/apache2/sites-available, el archivo 'default' hacia otro con el nombre del nuevo sitio, y modificar lo necesario. Se tiene así tener un archivo de configuración por cada sitio.
Instalación
aptitude install apache2
Primer prueba: desde un navegador visitar la página: http://servidor.apache/ donde "servidor.apache" es la IP del servidor, o un nombre de domínio que resuelve a ésta. (si el servidor tiene un navegador, puede ser: http://localhost/)
Debemos entonces ver aparecer una página de prueba: "It works!"
Organización de /etc/apache2 :
/etc/apache2/apache2.conf: archivo principal de configuración, /etc/apache2/ports.conf: declaración de uso de VirtualHosts y puertos de escucha /etc/apache2/conf.d/ carpeta de configuraciones específicas a módulos u otros paquetes que utilizan apache /etc/apache2/sites-available : definición de "sitios" VirtualHosts. aquí, inicialmente hay un sitio llamado "default", que responderá a cualquier solicitud. /etc/apache2/sites-enabled : "sitios" activados (enlaces simbólicos a la precedente carpeta)
Utilitarios de administración de sitios:
a2ensite (por "apache2 enable site"): activación de los sitios disponibles, a2dissite: desactivación de los sitios.
Podemos, por ejemplo, crear un nuevo sitio creando un archivo /etc/apache2/sites-available/mi_sitio, a partir del archivo /etc/apache2/sites-available/default
Si queremos que este sitio sólo responda a cierto dominio que resuelve en ese servidor (y no a la IP o a otro dominio), agregamos en la sección <VirtualServer *:80> una directiva: ServerName www.mi_servidor.org
Se pueden personalizar las directivas existentes y/o agregar muchas otras. Debemos finalmente activar el sitio: a2ensite mi_sitio Y re-cargar la configuración: /etc/init.d/apache2 reload
Otros utilitarios similares existen para los módulos.
a2enmod: habilitación de un módulo apache, a2dismod: deshabilitación de un módulo apache,
Apache ya viene compilado con diferentes módulos. Por ejemplo, para habilitar apache en https: a2enmod ssl
Esto requerirá, además, un certificado válido y la configuración de un sitio en https. Un certificado autofirmado se puede obtener instalando ssl-cert, y un sitio activando: a2ensite default-ssl
- Instalación de openssl y ssl-cert
$ apt-get install openssl ssl-cert
- Crear los certificados:
$ a2enmod ssl $ mkdir /etc/apache2/ssl $ /usr/sbin/make-ssl-cert /usr/share/ssl-cert/ssleay.cnf /etc/apache2/ssl/apache.pem
as2enmod, sin parámetro, muestra la lista de módulos disponibles.
Además de las dependencias, existen varios paquetes adicionales ligados a apache, a menudo a través de módulos: libapache2-mod-XXX, por ejemplo PHP: libapache2-mod-php5
Apache se utiliza a menudo en una configuración "LAMP": Linux Apache MySQL PHP. Es necesario instalar además:
libapache2-mod-php5 (que incluye php5 en dependencia) mysql-server php-mysql
Procedimiento
Crear "vhosts" para la web de presentación y la tikiwiki
- vhost para tikiwiki
En el vhost (y en el DNS) definimos ServerName y ServerAlias
ServerName tikiwiki.taller.curerocha.edu.uy ServerAlias wiki.dompolonio.taller.curerocha.edu.uy
Verificación
- Para verificar que por default rediriga a la wiki del CURE, haremos lo siguiente. En un navegador probaremos las siguiente direcciones y debe redirigir a la wiki.
http://wiki.dompolonio.taller.curerocha.edu.uy http://www.dompolonio.taller.curerocha.edu.uy http://164.73.234.111
- La otra verificación pertinente a este tema es comprobar el acceso a phpmyadmin.
http://www.dompolonio.taller.curerocha.edu.uy/phpmyadmin
Notas adicionales
Autentificación, Autorización y Control de Acceso con Apache2
DNS-apache
Referencias
Servidor web apache http://httpd.apache.org/ (www.apache.org es el de la fundación, que también tiene otros proyectos, como Tomcat, por ejemplo) Ver en particular:
- La documentación: http://httpd.apache.org/docs/2.2/
- El manejo de hospedajes virtuales: http://httpd.apache.org/docs/2.2/vhosts/
- Las reglas de re-escritura de URLS: http://httpd.apache.org/docs/2.2/rewrite/