在LNMP(Linux, Nginx, MySQL, PHP)环境中配置PHP版本,通常需要以下几个步骤:
安装多个PHP版本: 你可以使用包管理器来安装多个PHP版本。例如,在Ubuntu上,你可以使用以下命令安装PHP 7.2和PHP 7.3:
sudo apt-get install php7.2 php7.3
安装PHP-FPM: PHP-FPM(FastCGI Process Manager)是一个PHP FastCGI实现,具有更好的性能和更多的配置选项。你需要为每个PHP版本安装PHP-FPM:
sudo apt-get install php7.2-fpm php7.3-fpm
配置Nginx: 你需要为每个PHP版本配置一个单独的server块,或者使用location指令来区分不同的PHP版本。以下是一个示例配置:
server {
listen 80;
server_name example.com;
root /var/www/html;
index index.php index.html index.htm;
location / {
try_files $uri $uri/ =404;
}
location ~ \.php$ {
fastcgi_pass unix:/var/run/php/php7.2-fpm.sock; # 使用PHP 7.2
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
}
location ~ \.php$ {
fastcgi_pass unix:/var/run/php/php7.3-fpm.sock; # 使用PHP 7.3
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
}
}
在这个示例中,我们为PHP 7.2和PHP 7.3分别配置了两个location块。你可以根据需要修改这些配置。
重启Nginx: 在完成配置后,你需要重启Nginx以使更改生效:
sudo systemctl restart nginx
选择PHP版本:
根据你的需求,你可以通过修改Nginx配置文件中的fastcgi_pass指令来选择使用哪个PHP版本。例如,如果你想使用PHP 7.3,只需将fastcgi_pass指令更改为指向PHP 7.3的FPM套接字:
fastcgi_pass unix:/var/run/php/php7.3-fpm.sock;
然后重启Nginx:
sudo systemctl restart nginx
通过以上步骤,你可以在LNMP环境中配置多个PHP版本,并根据需要选择使用哪个版本。