Montar Servidor Web Apache en Linux
A continuación le explicaremos los pasos para una correcta instalación del servidor web Apache con PHP4 y soporte MySQL.
Estos son los requisitos necesarios para compilar Apache:Espacio en discoCompruebe que tiene disponibles al menos 50 MB de espacio libre en disco. Después de la instalación, Apache ocupa aproximadamente 10 MB. No obstante, la necesidad real de espacio en disco varía considerablemente en función de las opciones de configuración que elija y de los módulos externos que use. Compilador ANSI-C y Build SystemCompruebe que tiene instalado un compilador de ANSI-C. Se recomienda el Compilador GNU C (GCC) de la Free Software Foundation (FSF) (con la versión 2.7.2 es suficiente). Si no tiene instaldo el GCC, entonces compruebe que el compilador que va a utilizar cumple con los estándares ANSI. Además, su PATH debe contener la ubicación donde de encuentran las herramientas básicas para compilar tales como make. Ajuste exacto del reloj del sistemaLos elementos del protocolo HTTP están expresados según la hora del dia. Por eso, si quiere puede investigar como instalar alguna utilidad para sincronizar la hora de su sistema. Para esto, normalmente, se usan los programas ntpdate 0 xntpd, que están basados en el protocolo Network Time Protocol (NTP). Consulte el grupo de noticias comp.protocols.time.ntp y el sitio web de NTPpara obtener más información sobre NTP y los servidores públicos de tiempo. Perl 5 [OPCIONAL]Para algunos de los scripts de soporte como apxs o dbmmanage (que están escritos en Perl) es necesario el intérprete de Perl 5 (las versiones 5.003 o posteriores son suficientes). Si el script 'configure' no encuentra ese intérprete tampoco pasa nada. Aún puede compilar e instalar Apache 2.0. Lo único que ocurrirá es que esos scripts de soporte no podrán ser usados. Si usted tiene varios interpretes de Perl instalados (quizás Perl 4 porque estaba ya incluido en su distribución de Linux y Perl 5 porque lo ha instalado usted), entonces se recomienda usar la opción --with-perl para asegurarse de que ./configure usa el intérprete correcto.
Lo primero será instalar el programa mysql. Lo instalaremos desde el paquete correspondiente a nuestro sistema operativo (rpm -i, dpkg -i, etc). # pkg_add mysql-client-3.23.42.tgz # pkg_add mysql-server-3.23.42.tgz
Ambos paquetes debes bajarlod de FTP de OpenBSD. Si no estás usando OpenBSD y no tienes binarios para tu sistema, o prefieres compilarlos tu mismo, lo cual es una buena elección, puedes bajarlos de la página oficial de MySQL: http://www.mysql.com.
Una vez instalado mysql, bajamos los fuentes de apache y php4 y los guardamos en /usr/local/src. Estos fuentes los podrás encontrar en http://www.apache.org/dist/httpd/ yhttp://www.php.net/downloads.php.
El entorno de configuración e instalación de Apache 2.0 ha cambiado completamente respecto al de Apache 1.3. Apache 1.3 usaba un conjunto de scripts a medida para conseguir una instalación fácil. Apache 2.0 usa libtool y autoconf para crear un entorno más parecido al de muchos otros proyectos Open Source.
Descargar $ lynx http://httpd.apache.org/download.cgi
Puede descargar Apache desde la sección de descargas del sitio web de Apache el cual tiene varios mirrors. Para la mayoría de los usuarios de Apache que tienen sistemas tipo Unix, se recomienda que se descarguen y compilen el código fuente. El proceso de compilación (descrito más abajo) es fácil, y permite adaptar el servidor Apache a sus necesidades. Además, las versiones de disponibles en archivos binarios no están siempre actualizadas con las últimas modificaciones en el código fuente. Si se descarga un binario, siga las instrucciones contenidas en el archivo INSTALL.bindist incluido en la distribución.
Después de la descarga, es importante que verifique que el archivo descargado del servidor HTTP Apache está completo y sin modificaciones. Esto puede hacerlo comparando el archivo descargado (.tgz) con su firma PGP. Instrucciones detalladas de cómo hacer esto están disponibles en la sección de descargas junto con un ejemplo de cómo usar PGP.
Descomprimimos y renombramos: Extraer el código fuente del archivo .tgz que acabada de descargar es muy fácil. Ejecute los siguientes comandos:
Descomprimir $ gzip -d httpd-2_1_XX.tar.gz
$ tar xvf httpd-2_1_XX.tar
Estos comandos crearán un nuevo directorio dentro del directorio en el que se encuentra y que contendrá el código fuente de la distribución. Debe cambiarse a ese directorio con cd para proceder a compilar el servidor Apache.
NOTA: Las XX hay que reemplazarlo por el número de la versión menor, y PREFIX hay que reemplazarlo por la ruta en la que se va a instalar Apache. Si no especifica ningún valor en PREFIX, el valor por defecto que se toma es /usr/local/apache2.
Hacemos primero el ./configure de apache, proceso necesario para la compilación de PHP. Ahora compilamos PHP con soporte para MySQL y a continuación Apache:
Ejecutar el script configure % cd /usr/local/src/apache
$ ./configure --prefix=PREFIX
El siguiente paso es configurar la estructura de directorios para su plataforma y sus necesidades personales. Esto se hace usando el script configure incluido en el directorio raíz de la distribución que acaba de descargar. (Los desarrolladores que se descarguen la versión del CVS de la estructura de directorios necesitarán tener instalados autoconf y libtool, y necesitarán ejecutar buildconf antes de continuar con los siguientes pasos. Esto no es preciso para las versiones oficiales.)
Para configurar la estructura de directorios a partir del código fuente usando las opciones por defecto, solo tiene que ejecutar ./configure. Para cambiar las opciones por defecto, configure acepta una serie de variables y opciones por la línea de comandos.
La opción más importante es --prefix que es el directorio en el que Apache va a ser instalado después, porque Apache tiene que ser configurado para el directorio que se especifique para que funcione correctamente. Es posible lograr un mayor control del lugar donde se van a instalar los ficheros de Apache con otras opciones de configuración.
En este momento, puede especificar que características o funcionalidades quiere incluir en Apache activando o desactivando módulos. Apache viene con una selección básica de módulos incluidos por defecto. Se pueden activar otros módulos usando la opción --enable-module, donde module es el nombre del módulo sin el mod_ y convirtiendo los guiones bajos que tenga en guiones normales. También puede optar por compilar módulos como objetos dinámicos compartidos (DSOs) -- que pueden ser activados o desactivados al ejecutar -- usando la opción --enable-module=shared. De igual manera, puede desactivar alguno de los módulos que vienen por defecto en la selección básica con la opción --disable-module. Tenga cuidado cuando use estas opciones, porque configure no le avisará si el módulo que especifica no existe; simplemente ignorará esa opción.
Además, a veces es necesario pasarle al script configure información adicional sobre donde esta su compilador, librerias o ficheros de cabecera. Esto se puede hacer, tanto pasando variables de entorno, como pasandole opciones a configure a través de la línea de comandos. Para más información, consulte el Manual del script configure.
Para que se haga una idea sobre las posibilidades que tiene, aquí tiene un ejemplo típico que configura Apache para la ruta /sw/pkg/apache con un compilador y unos flags determinados, y además, con dos módulos adicionales mod_rewrite y mod_speling para cargarlos después a través del mecanismo DSO:
Cuando se ejecuta configure se comprueban que características o funcionalidades están disponibles en su sistema y se crean los Makefiles que serán usados luego para compilar el servidor. Esto tardará algunos minutos.
La información sobre todas las opciones de configure está disponible en el Manual del script configure.
Lo siguiente será compilar PHP:% cd /usr/local/src/php % ./configure --with-mysql --with-apache=/usr/local/src/apache --enable-track-vars % make % make install % cp /usr/local/src/php/php.ini-dist /usr/local/lib/php.ini
Y finalmente la instalación de apache ejecutando el siguiente comando:
Compilar % cd /usr/local/src/apache
% ./configure --prefix=/www--activate-module=src/modules/php4/libphp4.a
% make
Por favor, tanga un poco de paciencia ahora, porque una configuración básica tarda aproximadamente 3 minutos en compilar en un Pentium III con un sistema Linux 2.2, pero este tiempo puede variar considerablemente en función de su hardware y del número de módulos que haya seleccionado.
Ahora es el momento de instalar el paquete en el directorio elegido en PREFIX (consulte la opción --prefix más arriba) ejecutando:
Instalar $ make install
Si usted está solo actualizando una instalación anterior, la nueva instalación no sobreescribirá sus ficheros de configuración ni otros documentos.
El paso siguiente, es personalizar su servidor Apache editando los ficheros de configuración que están en PREFIX/conf/.
Personalizar $ vi PREFIX/conf/httpd.conf
Usted puede echarle un vistazo al Manual de Apache que está en docs/manual/ o consulte en http://httpd.apache.org/docs-2.1/ la versión más reciente de este manual y la Guia de Referencia de todas lasdirectivas de configuración disponibles.
Con esto ya tenemos Apache con PHP4 y MySQL en el directorio /usr/local/apache. Para iniciar mysql y apache ejecutaremos:
Comprobar que la instalación funciona $ /usr/local/bin/safe_mysqld &
# /www/bin/apachectl start
y entonces debe poder acceder al documento que tenga especificado por defecto usando el siguiente URL: http://localhost/. El documento que verá estará en DocumentRoot y casi siempre estará enPREFIX/htdocs/. Si quiere parar el servidor, puede hacerlo ejecutando:
$ PREFIX/bin/apachectl stop
Antes de ejecutar apache debemos que añadir un par de lineas al fichero /www/conf/httpd.conf. Lo editaremos y añadiremos la siguiente linea, que hará que los ficheros .php, .php3 y .phtml pasen por el intérprete de PHP antes de ser enviados a quien esté conectado a apache:AddType application/x-httpd-php .php .php3 .phtml
También podemos añadir index.php a la variable DirectoryIndex, para que no haya que indicar, por ejemplo, http://dominio.com/index.php y carge directamente accediendo a http://dominio.com.
Actualizar una Instalación Previa
El primer paso para actualizar una instalación anterior es leer las especificaciones de la versión y el fichero CHANGES en la distribución de código fuente que ha descargado para encontrar los cambios que puedan afectar a su instalación actual. Cuando el cambio sea entre versiones mayores (por ejemplo, de la 1.3 a la 2.0 o de la 2.0 a la 2.2), entonces es más probable que haya diferencias importantes en la compilación y en la ejecución que necesitarán ajustes manuales. Todos los módulos necesitarán también ser actualizados para adaptarse a los cambios en el interfaz de programación (API) de módulos.
La actualización cuando el cambio es entre versiones menores (por ejemplo, de la 2.0.55 a la 2.0.57) es más fácil. El proceso make install no sobreescribirá ninguno de los documentos existentes, archivos log, o archivos de configuración. Además, los desarrolladores hacen todos los esfuerzos posibles para evitar cambios que generen incompatibilidades en las opciones de configure, en la configuración de la ejecución o en la interfaz de programación de módulos. En la mayor parte de los casos debe poder usar un comando configure idéntico, un fichero de configuración idéntico, y todos sus módulos deben seguir funcionando. (Esto es válido solo para versiones posteriores a la 2.0.41; las versiones anteriores contienen cambios incompatibles.)
Si va a conservar la estructura de directorios de su anterior instalación, la actualización es más fácil incluso. El fichero config.nice que está en el directorio raíz de la estructura de directorios antigua contiene exactamente el comando configure que usted usó para configurar la estructura de directorios de Apache. Entonces, para actualizar su instalación anterior a una versión más actual, solo tiene que copiar el archivo config.nice a la estructura de directorios del código fuente de la nueva versión, editarlo, hacer cualquier cambio que desee, y ejecutarlo :
$ ./config.nice
$ make
$ make install
$ PREFIX/bin/apachectl stop
$ PREFIX/bin/apachectl start
Tenga en cuenta que antes de poner una nueva versión de Apache en producción, debe siempre probarla antes en su entorno. Por ejemplo, puede instalar y ejecutar la nueva versión junto con la antigua usando un --prefix diferente y un puerto diferente (modificando la directiva Listen) para comprobar que no existe ninguna incompatibilidad antes de hacer la actualización definitiva.
Eso es todo. No os olvides de cambiar el password del usuario root de mysql mediante mysqladmin -u root -p password newpassword.