PHP y Apache · 4 min read · Jan 01, 2026
Usando PHP5-FPM Con Apache2 En OpenSUSE 12.1
Usando PHP5-FPM Con Apache2 En OpenSUSE 12.1
Versión 1.0
Autor: Falko Timme
Sígueme en Twitter
Este tutorial muestra cómo puedes instalar un servidor web Apache2 en un servidor OpenSUSE 12.1 con soporte para PHP5 (a través de PHP-FPM) y MySQL. PHP-FPM (FastCGI Process Manager) es una implementación alternativa de PHP FastCGI con algunas características adicionales útiles para sitios de cualquier tamaño, especialmente para sitios más concurridos.
¡No garantizo que esto funcione para ti!
1 Nota Preliminar
En este tutorial utilizo el nombre de host server1.example.com con la dirección IP 192.168.0.100. Estas configuraciones pueden diferir para ti, así que debes reemplazarlas donde sea apropiado.
2 Habilitando Repositorios Adicionales
Necesitamos instalar mod_fastcgi más adelante, el cual está disponible en un repositorio que no está habilitado por defecto. Podemos habilitarlo de la siguiente manera:
zypper --gpg-auto-import-keys addrepo --name "Módulos de terceros para el servidor HTTP Apache. (Apache_openSUSE_12.1)" http://download.opensuse.org/repositories/Apache:/Modules/Apache_openSUSE_12.1/ apache-third-party-12.13 Instalando MySQL 5
Para instalar MySQL, hacemos lo siguiente:
yast2 -i mysql mysql-client mysql-community-serverLuego creamos los enlaces de inicio del sistema para MySQL (para que MySQL se inicie automáticamente cada vez que el sistema arranque) y comenzamos el servidor MySQL:
systemctl enable mysql.service
systemctl start mysql.servicePara asegurar la instalación de MySQL, ejecuta:
mysql_secure_installationAhora se te harán varias preguntas:
server1:~ # mysql_secure_installation
NOTA: ¡SE RECOMIENDA EJECUTAR TODAS LAS PARTES DE ESTE SCRIPT PARA TODOS LOS SERVIDORES MySQL EN USO EN PRODUCCIÓN! ¡LEA CADA PASO CUIDADOSAMENTE!
Para iniciar sesión en MySQL y asegurarla, necesitaremos la contraseña actual para el usuario root. Si acabas de instalar MySQL, y no has establecido la contraseña de root aún, la contraseña estará en blanco, así que solo debes presionar enter aquí.
Introduce la contraseña actual para root (presiona enter si no hay): <– ENTER
OK, se utilizó la contraseña con éxito, continuando…
Establecer la contraseña de root asegura que nadie pueda iniciar sesión en el usuario root de MySQL sin la autorización adecuada.
¿Establecer contraseña de root? [Y/n] <– Y
Nueva contraseña: <– introduce tu contraseña deseada para root de MySQL
Reingresa la nueva contraseña: <– confirma esa contraseña
¡Contraseña actualizada con éxito!
Recargando tablas de privilegios..
… ¡Éxito!
Por defecto, una instalación de MySQL tiene un usuario anónimo, permitiendo que cualquiera inicie sesión en MySQL sin tener que tener una cuenta de usuario creada para ellos. Esto está destinado solo para pruebas, y para hacer que la instalación sea un poco más fluida. Debes eliminarlos antes de pasar a un entorno de producción.
¿Eliminar usuarios anónimos? [Y/n] <– Y
… ¡Éxito!
Normalmente, solo se debería permitir que root se conecte desde ‘localhost’. Esto asegura que alguien no pueda adivinar la contraseña de root desde la red.
¿Deshabilitar el inicio de sesión remoto de root? [Y/n] <– Y
… ¡Éxito!
Por defecto, MySQL viene con una base de datos llamada ‘test’ a la que cualquiera puede acceder. Esto también está destinado solo para pruebas, y debe ser eliminado antes de pasar a un entorno de producción.
¿Eliminar la base de datos de prueba y el acceso a ella? [Y/n] <– Y
- Eliminando la base de datos de prueba…
… ¡Éxito! - Eliminando privilegios en la base de datos de prueba…
… ¡Éxito!
Recargar las tablas de privilegios asegurará que todos los cambios realizados hasta ahora tengan efecto inmediato.
¿Recargar tablas de privilegios ahora? [Y/n] <– Y
… ¡Éxito!
Limpiando…
¡Todo listo! Si has completado todos los pasos anteriores, tu instalación de MySQL debería estar ahora segura.
¡Gracias por usar MySQL!
server1:~ #
Ahora tu configuración de MySQL debería estar asegurada.
4 Instalando Apache2
Apache2 está disponible como un paquete de OpenSUSE, por lo tanto, podemos instalarlo de esta manera:
yast2 -i apache2Ahora configura tu sistema para iniciar Apache al arrancar…
systemctl enable apache2.service… y comienza Apache:
systemctl start apache2.serviceAhora dirígete a tu navegador a http://192.168.0.100, y deberías ver la página de marcador de posición de Apache2 (no te preocupes por el error 403, esto sucede porque no hay un archivo de índice (por ejemplo, index.html) en el directorio raíz del documento):

La raíz del documento por defecto de Apache es /srv/www/htdocs/ en OpenSUSE, y el archivo de configuración es /etc/apache2/httpd.conf. Las configuraciones adicionales se almacenan en el directorio /etc/apache2/conf.d/.
5 Instalando PHP5
Podemos hacer que PHP5 funcione en Apache2 a través de PHP-FPM y el módulo mod_fastcgi de Apache que instalamos de la siguiente manera:
yast -i apache2-mod_fastcgi php5-fpmAntes de iniciar PHP-FPM, renombra /etc/php5/fpm/php-fpm.conf.default a /etc/php5/fpm/php-fpm.conf:
mv /etc/php5/fpm/php-fpm.conf.default /etc/php5/fpm/php-fpm.confCambia los permisos del directorio de sesiones de PHP:
chmod 1733 /var/lib/php5Luego abre /etc/php5/fpm/php-fpm.conf…
vi /etc/php5/fpm/php-fpm.conf… y cambia error_log a /var/log/php-fpm.log y descomenta pm.min_spare_servers y pm.max_spare_servers:
| [...] error_log = /var/log/php-fpm.log [...] pm.min_spare_servers = 5 [...] pm.max_spare_servers = 35 [...] |
A continuación, crea los enlaces de inicio del sistema para php-fpm y inícialo:
systemctl enable php-fpm.service
systemctl start php-fpm.servicePHP-FPM es un proceso daemon que ejecuta un servidor FastCGI en el puerto 9000, como puedes ver en la salida de
netstat -tapnserver1:~ # netstat -tapn
Conexiones de Internet activas (servidores y establecidas)
Proto Recv-Q Send-Q Dirección Local Dirección Remota Estado PID/Nombre del Programa
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 2329/nginx
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1204/sshd
tcp 0 0 127.0.0.1:9000 0.0.0.0:* LISTEN 2511/php-fpm.conf)
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 2059/mysqld
tcp 0 0 192.168.0.100:22 192.168.0.199:1632 ESTABLISHED 1284/0
tcp 0 0 :::22 :::* LISTEN 1204/sshd
server1:~ #A continuación, habilita los siguientes módulos de Apache…
a2enmod actions
a2enmod fastcgi
a2enmod alias… deshabilita mod_php5…
a2dismod php5… y reinicia Apache:
systemctl restart apache2.serviceRecibe nuevas publicaciones en tu bandeja de entrada.
No spam. Cancela la suscripción en cualquier momento.