请问两个php版本如何实现在同一个系统内共存?,比如php5.6与php7,nginx怎么配置
php后端:如果你想要快速在生产环境下实现多个网站应用使用多版本的php,其实市面上的现成的套件已经太多太多了,随便哪个都可以快速实现。
(但从个人角度,我不推荐也不会真的建议在任何生产环境下使用这类套件,年年被爆破的案例太多了)
Nginx + PHP 的组合里比较多见的是 Nginx + php-fpm 的组合,也有 Nginx + Apache????mod???? 的,但那个就不展开了。在这种模式下, Nginx 其实就是个 http 的handler,接住请求和处理静态文件就可以,动态的文件其实全部发送给了 php-fpm 去处理,其实你想要实现多个共存,本质上是让 php-fpm 分别跑在不同的端??d????就可以了。
随便你多少个版本的 php 都和 nginx 其实没太大关系,只要端口错开, nginx 都能处理。
一个demo配置
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
location ~ .php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}新的站点使用 9001 或者其他端口,只要不和已有端??e????突就可以了。
如果是编译的话,可以指定不同的输出文件夹。然后 fpm 通过指定不同的端??f????实现。如果是包。一般会有别名。比如 php -> php7.2 之类的。找找
php7.2 之类的。找找