miércoles, 4 de abril de 2007

Apache + PHP + Firebird

El siguiente articulo explica como instalar Apache 2, PHP 5 y Firebird 1.5; tambien es aplicable para otras versiones, excepto para PHP5 y Firebird 2 (juntos) ya que Firebird 2 no posee algunas funciones que PHP5 usa.

Plataforma: Slackware 11

Paso 1 - Descargar:


  • Apache: httpd-2.2.4.tar.gz
  • PHP: php-5.2.1.tar.gz
  • FIrebird: FirebirdSS-1.5.4.4910-0.i686.tar.gz

Paso 2 - Instalar Firebird:
a. Descomprimir el archivos descargado:
#tar -zxvf FirebirdSS-1.5.4.4910-0.i686.tar.gz
b. Por el sistema de archivos de Slackware debemos de crear la carpeta /etc/rc.d/init.d
#mkdir /etc/rc.d/init.d
c. Ejecutamos el archivo de instalación:
#FirebirdSS-1.5.4.4910-0.i686/install.sh
En esta sección nos pedira la contraseña del superadministrador, por defecto masterkey.
La instalacion desarrollara en la carpeta /opt/firebird
El demonio se creara en /etc/rc.d/init.d/firebird
d. Iniciamos el Demonio
#/etc/rc.d/init.d/firebird start

Paso 3 - Instalar Apache:

a. Descomprimimos el archivo descargado:
#tar -zxvf httpd-2.2.4.tar.gz
b. Ingresamos a la carpeta creada
#cd httpd-2.2.4
c. Configuramos nuestro Apache
#./configure --prefix=/usr/local/apache2 --enable-module=so
d. Compilamos:
#make
e. Instalamos:
#make install
f. Podemos configurar Apache con el archivo /usr/local/apache2/conf/httpd.conf, en nuestro caso vamos a cambiar el directorio de documentos web:
#emacs /usr/local/apache2/conf/httpd.conf
buscamos la siguiente línea:
DocumentRoot "/usr/local/apache2/htdocs"
y la reemplazamos:
DocumentRoot "/var/www"
Esto permitira que nuestros documentos esten en la carpeta /var/www
g. Iniciamos nuestro servidor
#/usr/local/apache2/bin/apachectl start
h. Probamos viendo por nuestro navegador web la pagina http://localhost/ , ejemplo:
#lynx http://localhost

...Regresamos al directorio superior
#cd ..

Paso 4 - Instalar PHP:
a. Descomprimimos el archivo descargado:
#tar -zxvf php-5.2.1.tar.gz
b. Ingresamos a la carpeta creada
#cd php-5.2.1
c. Configuramos php
# ./configure -prefix=/usr/local/php -with-apxs2=/usr/local/apache2/bin/apxs -with-interbase=shared,/opt/firebird
d. Compilamos
#make
e. Instalamos
#make install
f. Verificamos si se han creado con satisfaccion los archivos libphp5.so
#ls /usr/local/apache2/modules/libphp5.so
Si no existe el archivo lo copiamos
#cp -p libs/libphp5.so /usr/local/apache2/modules/
g. Verificamos si se creo el archivo de configuración php.ini
#ls /usr/local/php/lib/php.ini
Si no existe el archivo lo copiamos
#cp php.ini-dist /usr/local/php/lib/php.ini
h. Configuramos el archivo php.ini
#emacs /usr/local/php/lib/php.ini
Buscamos las siguiente línea
extension_dir ="./"
y las reemplazamos por las siguientes
extension_dir ="/usr/local/php/lib/php/extensions/no-debug-non-zts-20060613"

El directorio mostrado con anterioridad es donde se ha creado la libreria interbase.so, esta direccion puede cambiar segun la versión de PHP que se tenga.
Otra forma seria copiar modules/interbase.so a la carpeta del archivo php.ini de la siguiente manera:
#cp modules/interbase.so /usr/local/php/lib
Con este paso ya no tendriamos que cambiar extension_dir, ya que apuntaria a la misma carpeta.

En la seccion de "Dynamic Extensions" añadimos:
extension=interbase.so

Paso 5 - Unir Apache y PHP:
a. Modificamos el archivo de configuracion de apache
#emacs /usr/local/apache2/conf/httpd.conf
añadiendo las siguientes líneas:
AddType application/x-httpd-php .php .phtml
AddType application/x-httpd-php-source .phps

Paso 6
Reiniciamos el servidor apache:
#/usr/local/apache2/bin/apachectl restart

Activar XDM, KDM, GDM

Para los usuarios de Slackware, se nos brinda un inicio de sesión en consola; para muchos esto puede ser desagradable por el poco conocimiento Linux. En esta ocasión vamos a cambiar esto por nuestro querido XDM, KDM o GDM.

Paso 1:
Editamos el archivo /etc/inittab
#sudo emacs /etc/inittab

cambiando la línea:
id:3:initdefault:

por
id:4:initdefault:


Solo es necesario cambiar el 3 por el 4, si revisamos en la parte superior aparece la descripcion de los valores que puede tomar (0 al 6)

Paso 2:
En este paso vamos a escoger cual vamos a usar. Para esto editamos el archivo /etc/rc.d/rc.4
#sudo emacs /etc/rc.d/rc.4

veremos una lineas similares a estas:

if [ -x /usr/bin/gdm ]; then
exec /usr/bin/gdm -nodaemon
fi

# Someone thought that gdm looked prettier in /usr/sbin,
# so look there, too:

if [ -x /usr/sbin/gdm ]; then
exec /usr/sbin/gdm -nodaemon
fi


# Not there? OK, try to use KDE's kdm session manager:


if [ -x /opt/kde/bin/kdm ]; then
exec /opt/kde/bin/kdm -nodaemon
fi

# If all you have is XDM, I guess it will have to do:
if [ -x /usr/X11R6/bin/xdm ]; then
exec /usr/X11R6/bin/xdm -nodaemon
fi

Esto indica que primero ejecutara gdm (si existe y si tienen permisos de ejecución), kdm en caso contrario, y al final xdm.

Modificamos el orden de estos; ejm: si quisieramos que xdm se ejecute primero, el bloque de xdm debe ir al comienzo.

Paso 3:
Reiniciamos y Listo.

Nota: Verificar si los archivos tienen permisos de ejecución

Configure Grafana and Slack

To configure Grafana to send alerts to Slack, you need to set up a notification channel in Grafana and configure it to use the Slack integra...