Apache fastcgi php

Apache proxy ssl

LÉAME PRIMEROEste artículo se proporciona como cortesía. La instalación, configuración y solución de problemas de aplicaciones de terceros generalmente no es soportada por (mt) Media Temple. Por favor tome un momento para revisar la Declaración de Apoyo.

Si esta es la primera vez que ha habilitado FastCGI, puede ver errores de sesión con sitios que utilizan sesiones php (como sitios que ejecutan WordPress, Drupal, Joomla, etc.). Para corregir estos problemas, tendrá que asignar un nuevo session.save_path, o simplemente ejecutar este comando (como root a través de ssh) para alterar los permisos de la ruta de almacenamiento de sesión por defecto:

Si experimenta un “error http” al cargar archivos de más de 128 KB, deberá editar su archivo de configuración FastCGI y aumentar el límite, que por defecto es de este valor. Para establecer este límite en 1GB, siga las instrucciones que se indican a continuación:

Algunos problemas de FastCGI pueden requerir que los cambios se realicen por sitio, utilizando la configuración PHP/FastCGI para cada dominio. Estos son algunos problemas comunes que pueden requerir un enfoque dominio por dominio:

Proxy inverso Apache

Usando mod_php cada trabajador de Apache tiene todo el intérprete de PHP cargado en él. Dado que Apache necesita un proceso trabajador por cada petición entrante, puede acabar rápidamente con cientos de trabajadores de Apache en uso, cada uno con su propio intérprete de PHP cargado, consumiendo enormes cantidades de memoria.

  Lecciones aprendidas tras migrar más de 25 proyectos a .NET Core

(Tenga en cuenta que esto no es exactamente cierto, el worker_mpm de Apache le permite servir muchas peticiones con un único proceso worker de Apache. Sin embargo, incluso en 2009, esta no es la forma recomendada de desplegar PHP debido a sospechas de problemas de threading con las extensiones de PHP).

FastCGI significa que las partes de php no se ejecutan en el mismo proceso que las partes de apache, a diferencia de mod_php. Esta separación puede tener algunas ventajas definitivas cuando se trata de reiniciar el servidor o lidiar con aplicaciones fuera de control – en el caso de mod_php eso significa que es el proceso de apache el que está “fuera de control”, pero bajo fastcgi es sólo un proceso con el que apache está hablando, por lo que el servidor entero no tiene que ser desconectado.

Otra ventaja aún no mencionada es el hecho de que con mod_fcgid (que es una nueva implementación para usar FastCGI en Apache) y suexec puedes realizar configuraciones donde diferentes vhosts usan diferentes usuarios de Linux para la ejecución, lo que puede ser un beneficio real de seguridad en un escenario de alojamiento compartido.

Php-fpm

No creo que la configuración de tu servidor esté relacionada con tu problema, pero abordemos esto primero : mod_fastcgi se encargará de generar procesos PHP y sólo alimentará una petición a la vez por cada proceso (AFAIK, soy un usuario mod_fcgid). Por lo tanto es inútil pedirle a PHP que bifurque otros procesos, es mejor tener PHP_FCGI_CHILDREN=0 para desactivar esta función.

  Char en java

Puede regular por separado su pool de procesos FastCGI con las opciones de mod_fastcgi. Sólo puedo ayudar con experiencia sólida en mod_fcgid, lo siento. Este pool de procesos tiene la mayoría de las veces un tamaño que está entre 1x y 4x el número de núcleos de la CPU.

Su aplicación no podría enviar un solo byte en 20 segundos, eso es bastante lento. Tendrás que encontrar el cuello de botella. Como regla general, si el promedio de carga es alto, hay una buena probabilidad de que esté ligado a la CPU o a la E/S (entonces procede a comprobar el uso de la CPU); de lo contrario, si la carga es baja, comprueba las esperas en recursos remotos (servidor de base de datos, APIs de terceros, etc.).

Proxyremote

Estoy bastante desconcertado cómo no parece haber una guía clara que puedo encontrar que detalla este proceso para algo que parece ser tan común. Perdonadme si existe… si es así, por favor indicadme la dirección correcta.

Primero instale los paquetes necesarios (dejo fuera php5 ya que esto asume que ya está instalado, añádalo de nuevo para una primera instalación). También tenga en cuenta que a partir de Apache 2.4 puede usar event-mpm en lugar de worker en http://www.vps.net/blog/2013/04/08/apache-mpms-prefork-worker-and-event/. Mi ejemplo muestra worker, pero sustituya la palabra worker por event si prefiere usarla.

  Crear carpeta java

Puede colocarlo en la configuración global de Apache (para que esté habilitado para todos los vhosts), por ejemplo en /etc/apache2/conf.d/php5-fpm.conf (este archivo no existe, así que debe crearlo), o puede colocarlo en cada vhost que deba usar PHP-FPM.

Para más información como cambiar PHP-FPM para usar un socket unix en lugar del puerto TCP por defecto o como configurar esto para hosts virtuales individuales en lugar de todos ellos, vea el tutorial fuente enlazado en la parte superior.

Esta web utiliza cookies propias y de terceros para su correcto funcionamiento y para fines analíticos y para mostrarte publicidad relacionada con sus preferencias en base a un perfil elaborado a partir de tus hábitos de navegación. Contiene enlaces a sitios web de terceros con políticas de privacidad ajenas que podrás aceptar o no cuando accedas a ellos. Al hacer clic en el botón Aceptar, acepta el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos. Más información
Privacidad