2 votes

Comment utiliser AddHandler dans httpd 2.4 pour changer la version de php-fpm

J'ai la configuration suivante pour httpd 2.2 (CentOS 6) avec mod_fastcgi et php-fpm:

LoadModule fastcgi_module modules/mod_fastcgi.so

AddHandler application/x-httpd-php71 .php
Action application/x-httpd-php71 /php71-fcgi
Alias /php71-fcgi /usr/lib/cgi-bin/php71-fcgi
FastCgiExternalServer /usr/lib/cgi-bin/php71-fcgi -socket /var/run/php71.sock -pass-header Authorization

Action application/x-httpd-php72 /php72-fcgi
Alias /php72-fcgi /usr/lib/cgi-bin/php72-fcgi
FastCgiExternalServer /usr/lib/cgi-bin/php72-fcgi -socket /var/run/php72.sock -pass-header Authorization

    Order allow,deny
    Allow from all

Mais dans httpd 2.4 (Centos 7) il y a mod_proxy_fcgi et puisque mod_fastcgi n'est pas disponible je n'ai pas FastCgiExternalServer J'essaie quelque chose comme ceci :

AddHandler application/x-httpd-php70 .php
Action application/x-httpd-php70 /php70-fpm virtual
Alias /php70-fpm /php70-fpm
ProxyPassMatch "/php70-fpm" "unix:/var/run/php70.sock|fcgi://localhost"

Action application/x-httpd-php72 /php72-fpm virtual
Alias /php72-fpm /usr/local/php-fpm/php72-fpm
ProxyPass "/usr/local/php-fpm/php72-fpm" 
"unix:/var/run/php72.sock|fcgi://localhost"

    Require all granted

Je sais que c'est faux (et ça ne fonctionne pas...) mais pour le moment je ne suis pas en mesure de trouver (s'il y en a un) un moyen de continuer à utiliser AddHandler application/x-httpd-phpXX .php dans .htaccess pour le changement de version avec CentOS7/Apache 2.4. Je sais que je pourrais utiliser :

    SetHandler  "proxy:unix:/var/run/php70.sock|fcgi://localhost/"

mais je cherche un moyen de garder mon .htaccess tel quel.

2voto

plamer Points 205

Après avoir cherché un peu, j'ai découvert qu'il existe une directive "Define" qui pourrait être utilisée :

J'ai ajouté dans fcgi.conf (incluse dans httpd.conf) ce qui suit :

Define php70 "proxy:unix:/var/run/php70.sock|fcgi://localhost"

Et ensuite j'ai utilisé le "php70" défini pour un AddHandler dans .htaccess :

AddHandler ${php70} .php

C'est la chose la plus proche que j'ai réussi à trouver. J'espère que cela aidera quelqu'un.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X