2017-10-20 3 views
1

Ich habe dieses Tutorial gefolgt PHP 5.6 und PHP-7 auf meinem Server zu haben: Running two PHP versions on the same serverLauf zwei PHP-Versionen auf dem gleichen Server (Stretch)

Die Sache ist, dass ich auf Debian 9 Stretch renne und Das Modul fastcgi ist nicht mehr verfügbar. Es gibt proxy_fcgi, aber es enthält FastCgiExternalServer nicht. Ich habe viele Dinge gelesen, aber ich kann nicht herausfinden, wie ich es ersetzen kann ... Irgendeine Idee?

<ifModule mod_proxy_fcgi.c> 
    AddHandler php56-fcgi .php 
    Action php56-fcgi /php56-fcgi 
    Alias /php56-fcgi /usr/lib/cgi-bin/php56-fcgi 
    FastCgiExternalServer /usr/lib/cgi-bin/php56-fcgi -socket /var/run/php/php5.6-fpm.sock -pass-header Authorization 
    Action php70-fcgi /php70-fcgi 
    Alias /php70-fcgi /usr/lib/cgi-bin/php70-fcgi 
    FastCgiExternalServer /usr/lib/cgi-bin/php70-fcgi -socket /var/run/php/php7.0-fpm.sock -pass-header Authorization 
</IfModule> 
<Directory /usr/lib/cgi-bin> 
    Require all granted 
</Directory>` 

Antwort

0

Es dauerte eine Weile, um herauszufinden, was am Ende zu tun, aber ich fand eine einfache Lösung:

sudo apt-get install php5.6-fpm 

sudo apt-get install php7.0-fpm 

sudo a2enconf php5.6-fpm 

Wenn Sie php5.6 und php5.7 installiert haben, stellen Sie sicher, dass Sie deaktivieren diese zwei und Apache neu starten.

sudo a2dismod php5.6 php7.0 

sudo systemctl restart apache2 

An dieser Stelle müssen alle Ihre Websites auf PHP 5.6 arbeiten.

Für die Websites, die PHP-7 benötigen, fügen Sie diese Zeile in der vhost:

ProxyPassMatch "^/(.*\.php(/.*)?)$" "unix:/var/run/php/php7.0-fpm.sock|fcgi://localhost/path/to/my/main/file" 

Es sollte den Trick tun :)

Verwandte Themen