====== Instalando Apache24 en FreeBSD-11 ====== {{:informatica:freebsd:apache-logo.png?370 |Logo Apache}} **Apache** es uno de los Servidores Web más utilizados en todas las plataformas informáticas y especialmente en el software libre. Este es un proyecto que lleva años de desarrollo y tiene una cantidad importante de módulos que aportan funcionalidades que otros servidores WEB no tienen. Existen muchos otros Servidores WEB que son rápidos, livianos, pero carecen de muchas funcionalidades a nivel de servidor web que apache ha ido incorporando con los años. ===== Instalando Apache24 ===== Suponiendo que tenemos instalado nuestra máquina con un FreeBSD que en este caso tenemos la versión 11 de nuestro potente Sistema Operativo, para realizar la instalación tenemos dos métodos: # pkg install apache24 -> Instala Apache24 desde los ports # cd /usr/ports/www/apache24 # make install clean Una vez que esto termine, ya sea por medio de la instalación de uno u otro método, tendremos instalado este Servidor WEB en nuestro sistema. ==== Configurando rc.conf ==== Para que el servidor web pueda arrancar con cada inicio de nuestro servidor debemos agregar al archivo **/etc/rc.conf** la siguiente línea de en el archivo. apache24_enable="YES" Con esto nos aseguramos que siempre arrancará en nuestro sistema. Apache en su instalación, deja un **script** de inicio en **/usr/local/etc/rc.d/** para iniciar y detener el Servidor Apache, pero para iniciar, detener y recargar el Port, se usa **apachectl**, que veremos más adelante al momento de iniciar nuestro Servidor. ==== Configurando http.conf ==== Este archivo contiene la mayoría de las configuraciones importantes de Apache. Todo se puede realizar desde este archivo, este se encuentra en **/usr/local/etc/apache24/http.conf**, y es posible configurar los **VirtualHost**, la configuración de los archivos de **logs**, la configuración de los archivos **html** para ser analizado por **php**. En sus primeras configuraciones, es posible que edite el archivo muchas veces y que hayan errores, por lo que siempre es recomendable que haga una copia del archivo original, tal como estaba al momento de la instalación. Lo primero que debe realizar para configurar este archivo para lograr que el servidor web arranque, es modificar el **ServerName** y poner el nombre canónico de su Servidor (**www.electrolinux.cl**) o si no tiene, puede poner la dirección IP o localhost, seguidos por el número de puerto. ServerName www.electrolinux.cl:80 El Servidor Apache tiene como directorio de trabajo por default el **/usr/local/www/**, si en su sistema no se encuentra de esta forma, o bien lo quiere dejar en otro sitio, puede reemplazar esta línea en su archivo de configuración, con el comando siguiente: # sarep "/usr/local/www" "/usr/local/www/web" httpd.conf Hasta ahora tenemos lo suficiente para que nuestro servidor WEB funcione adecuadamente, sólo debe reiniciar el servidor para que pueda ver un su browser una página de pruebas sobre su nuevo servidor Apache-2.4 ===== Configurando el Server ===== En FreeBSD, usted debe cargar el módulo **accf_module** antes de iniciar el servidor apache, para cargar el módulo use el comando: # klsload accf_http Esto lo puede cargar manualmente, pero es mejor dejarlo configurado permanentemente en el sistema, edite el archivo **/boot/loader.conf** y agregue la siguiente línea: accf_http_load="YES" accf_data_load="YES" kern.somaxconn=1024 ===== Iniciando Apache ===== **Apache** está controlado ahora por **apachectl** y algunos ejemplos de su uso son: # apachectl start -> Inicia el Servidor # apachectl stop -> Detiene el Servidor # apachectl restart -> Rearranca y recarga la nueva configuración # apachectl graceful -> Reinicia de una forma más suave el Servidor Pero antes de arrancar el Servidor Apache, debemos chequear nuestra configuración o nuestro archivo de configuración **http.conf** de nuestro sistema, esto lo realizamos con el comando: # apachectl configtest Performing sanity check on apache24 configuration: Syntax OK Al correr este comando, Apache comprueba la sintaxis del archivo de configuración y si no encuentra errores, indica con un **Syntax OK**, de lo contrario si hay errores, indica el error y la línea donde se encuentra. Si su configuración se encuentra correcta, podrá iniciar Apache sin problemas. # apachectl onestart -> Para la primera vez que inicia Apache # apachectl start -> Para las siguientes veces # apachectl restart -> Cuando quiera reiniciar el Servidor # apachectl graceful -> Reinicio suave del Servidor Con esto Apache se inciará y podrá verlo en su Browser preferido, si hay algún problema, estos quedan siempre reflejados en el sistema en los archivos de **logs**, para ello debe ver siempre los logs y comprobar su funcionamiento, para ello debe ejecutar lo siguiente: # tail -f /var/log/httpd_error.log -> Muestra los errores # tail -f /var/log/httpd_access.log -> Muestra los visitantes