Red Hat Linux 7.1: Official Red Hat Linux Reference Guide | ||
---|---|---|
Anterior | Capítulo 14. Módulos y directivas de Apache | Siguiente |
Debido a que Apache 1.3 soporta DSOs, puede fácilmente cargar módulos Apache o compilar sus propios módulos para su secure Web server. DSO significa que se pueden cargar los módulos en tiempo de ejecución. Debido a que los módulos se cargan sólo cuando es necesario no usan la memoria hasta que la necesitan.
El grupo Apache da información completa en http://www.apache.org/docs/dso.html. Después de la instalación consulte también http://your_domain/manual/mod/ donde encontrará la documentación en formato HTML (si ha instalado el paquete apache-manual). Se da una rápida descripción de cómo cargar los módulos, pero si necesita más detalles, consulte los URLs dados.
Para que su secure Web server use un módulo dinámicamente compartido, este módulo debe tener una línea LoadModule y otra AddModule en httpd.conf. Muchos módulos tienen ya estas dos líneas que están incluídas en httpd.conf, pero algunos de los menos comunmente usados están comentados fuera. Los módulos comentados fuera, se incluyeron durante la compilación, pero no se cargaron.
Si necesita usar uno de estos módulos no cargados, mire en el fichero httpd.conf para ver todos los módulos posibles. Cada uno de estos módulos tiene una línea LoadModule. Para ver un ejemplo, la sección LoadModule comienza con estas siete líneas:
#LoadModule mmap_static_module modules/mod_mmap_static.so LoadModule vhost_alias_module modules/mod_vhost_alias.so LoadModule env_module modules/mod_env.so LoadModule config_log_module modules/mod_log_config.so LoadModule agent_log_module modules/mod_log_agent.so LoadModule referer_log_module modules/mod_log_referer.so #LoadModule mime_magic_module modules/mod_mime_magic.so |
Muchas de estas líneas no están comentadas lo que quiere decir que cada módulo asociado está compilado dentro y cargado por defecto. La primera línea está comentada, lo cual significa que se compiló pero no se cargó el correspondiente módulo (mmap_static_module).
Para que su secure Web server cargue un módulo no cargado, primero escriba no-comentada en la correspondiente línea LoadModule. Por ejemplo, si quiere que su secure Web server cargue el mime_magic_module, cambie la línea LoadModule del original:
#LoadModule mime_magic_module modules/mod_mime_magic.so |
No comente la línea previa para que se pueda leer:
LoadModule mime_magic_module modules/mod_mime_magic.so |
Después, elimine el comentario de la correspondiente línea desde la sección AddModule en el httpd.conf. Para continuar con nuestro ejemplo, quite el comentario de la línea mod_mime_magic. La línea original se parecerá a la siguiente:
#AddModule mod_mime_magic.c |
La línea sin comentario será así:
AddModule mod_mime_magic.c |
Una vez que ha anulado el comentario de las líneas LoadModule y AddModule para el módulo que quiere cargar, pare y reinicialice su Web Server, consulte la la sección de nombre Arranque y apagado del httpd. Después de arrancar, el módulo se cargará en su secure Web server.
Si tiene su propio módulo, puede añadirlo al fichero httpd.conf y así se compila y se carga como un DSO. Si quiere llevar a cabo esta operación, necesita instalar el paquete apache-devel, consulte el Capítulo 13. Necesita este paquete apache-devel porque instala el fichero include, los ficheros cabeceras y el soporte de herramientas APache eXtenSion (APXS). APXS usa los ficheros include y los ficheros cabecera para compilar su módulo y así poder trabajar con Apache.
Advertencia | |
---|---|
Si desea usar la Herramienta de configuración de Apache, una utildad GUI que se incluye en el paquete Red Hat Linux, no debe compilar sus propios módulos con su servidor Apache o modificar el fichero de configuración del servidor httpd.conf. Si desea añadir módulos o modificar el fichero httpd.conf a mano, no use la Herramienta de configuración de Apache. Si necesita más información sobre dicha herramienta consulte la versión española de la Official Red Hat Linux Customization Guide. |
Si ha escrito su propio módulo o ha revisado algunos más, podrá usar APXS para compilar sus módulos fuentes fuera del árbol fuente Apache, sin necesitar ningún indicador del compilador y/o del creador de enlaces. Si necesita más información sobre APXS consulte la documentación en http://www.apache.org/docs/dso.html.
Una vez compilados sus móduloss usando APXS, situélos dentro de /usr/lib/apache. Entonces su módulo necesita ambas líneas LoadModule, AddModule en el fichero httpd.conf, como se describe para los módulos de Apache. Después en la lista LoadModule en el httpd.conf, añada una línea para el fichero objeto compartido para el módulo como la siguiente:
LoadModule foo_module modules/mod_foo.so |
Observe que necesitará cambiar el nombre del módulo y el nombre de su fichero objeto compartido apropiadamente.
Al final de la lista, la directiva AddModule en httpd.conf, añade una línea al fichero del código fuente para su módulo como la siguiente:
AddModule mod_foo.c |
Observe que necesitará cambiar el nombre del fichero del código fuente apropiadamente.
Una vez que haya completado los pasos previos, pare y reinicialice su servidor Web como se indica en la la sección de nombre Arranque y apagado del httpd. Si ha hecho todo correctamente, y su módulo está correctamente codificado, su servidor Web encontrará su módulo y lo cargará.
La porción de seguridad mod_ssl del secure Web server se considera un Dynamic Shared Object (DSO). Esto quiere decir que los usuarios opueden recompilar el servidor Web Apache si la extensión EAPI corregida desde el módulo de seguridad mod_ssl se aplica a Apache. Sigua las instrucciones para construir el mod_ssl en el servidor Apache que se encuentran en la documentación sobre el mod_ssl pero debe añadir el siguiente indicador:
--with-eapi-only |
La línea de comandos completa debe parecerse a esto:
./configure [userflags] --with-eapi-only |
Entonces construya e instale Apache.
Nota | |
---|---|
Red Hat no soporta las versiones recompiladas del servidor Web Apache. Se soporta la instalación de las versiones enviadas, pero si decide recompilar usted mismo el servidor Apache, lo tendrá que hacer solo, sin el soporte técnico. Se recomienda que no recompile Apache a menos que sepa exactamente lo que está haciendo. |