Plesk,启用相同版本的多个PHP实例

时间:2017-02-26 05:24:48

标签: php centos plesk

我有 Plesk 安装,我已经拥有多个域名,他们可以拥有自己的 PHP 版本。

我有一种情况需要设置测试域。这需要使用与实际域相同的 PHP版本,但我不希望它共享相同的 PHP进程。特别是,它不应该共享同一组PHP扩展,这些扩展在Plesk中按版本级别配置,而不是按域级别配置。

但是,我没有看到用 Plesk 做到这一点的方法,或者我甚至不知道这是否可行。

我想确保测试不会对其他域产生负面影响,因此需要进行额外的分离。

注意:通常,人们会设置一个单独的服务器进行测试;但是,在这种特殊情况下这是不实际的,所以如果这是错误的方法,我想听听有关如何支持在共享服务器上进行测试而不会造成破坏的建议。

1 个答案:

答案 0 :(得分:0)

您可以通过

创建半隔离的PHP处理程序
# cp -r /opt/plesk/php/7.1 /opt/plesk/php/7.1_test

# /usr/local/psa/bin/php_handler --add -id 7.1.2-test -displayname 7.1.2-test -path /opt/plesk/php/7.1_test/bin/php-cgi  -clipath /opt/plesk/php/7.1_test/bin/php -phpini /opt/plesk/php/7.1_test/etc/php.ini -type fastcgi

# now add xdebug extension to /opt/plesk/php/7.1_test/etc/php.ini
# echo "extension=/opt/plesk/php/7.1_test/lib64/php/modules/xdebug.so"  >> /opt/plesk/php/7.1_test/etc/php.ini

只有这个PHP处理程序仍然会从原始/opt/plesk/php/7.1/etc/php.d/获取加载的扩展名的问题,因为这个路径已编译,正如我所见it can't be redefined in php.ini

ORIGIN ANSWER

对于Windows ,您可以设置单独的IIS应用程序池: Plesk IIS Application Pool

对于Linux ,您可以使用该域名使用PHP-FPM处理程序:

29271 ?        Ss     0:00      0  3408 129231 5800  0.5 php-fpm: master process (/opt/plesk/php/7.0/etc/php-fpm.conf)
29584 ?        S      0:00      0  3408 149283 16624  1.6  \_ php-fpm: pool d1.cl1.a10-52-31-113.qa.plesk.ru
29593 ?        S      0:00      0  3408 149283 16624  1.6  \_ php-fpm: pool cl1.a10-52-31-113.qa.plesk.ru