为Nginx和Apache配置多版本PHP、切割多个conf文件
遗失的美好灬遗失的美好灬 -有时候我们的项目不可能都是同一个PHP版本,需要每个项目都配置不同版本的PHP,宝塔和PHPStudy就是通过以下配置实现的:
Nginx切割conf(非选)在nginx.conf
添加
include vhosts/*.conf;
这样Nginx会自动引入当前目录->vhosts
目录下的所有*.conf文件,方便每个项目单独管理Nginx配置文件
在conf
文件中增加
server {
listen 80;
server_name localhost;
root "D:/WWW";
location / {
index index.php index.html;
include D:/WWW/nginx.htaccess;
autoindex on;
}
location ~ \.php(.*)$ {
fastcgi_pass 127.0.0.1:9010;
fastcgi_index index.php;
fastcgi_split_path_info ^((?U).+\.php)(/?.+)$;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;
include fastcgi_params;
}
}
fastcgi_pass是PHP执行IP+端口fastcgi_index默认PHP文件
fastcgi_split_path_info是正则
fastcgi_param是PHP所在目录(Nginx会自动获取赋值给$fastcgi_script_name)
假设我们有两个PHP版本,一个PHP5,一个PHP7,那么可以将他们分别运行在不同的端口上,然后通过设置fastcgi_pass
参数来实现每个项目不同PHP版本
在httpd.conf
添加
Include conf/vhosts/*.conf
这样Apache会自动引入Apache安装目录->conf->vhosts
目录下的所有*.conf文件,方便每个项目单独管理Apache配置文件
在conf
文件里添加
FcgidInitialEnv PHPRC "D:/Extensions/php/php8.2.2-nts"
AddHandler fcgid-script .php
FcgidWrapper "D:/Extensions/php/php8.2.2-nts/php-cgi.exe" .php
指定对应目录即可
特别申明:本文内容来源网络,版权归原作者所有,如有侵权请立即与我们联系(cy198701067573@163.com),我们将及时处理。
php介绍
PHP即“超文本预处理器”,是一种通用开源脚本语言。PHP是在服务器端执行的脚本语言,与C语言类似,是常用的网站编程语言。PHP独特的语法混合了C、Java、Perl以及 PHP 自创的语法。利于学习,使用广泛,主要适用于Web开发领域。
上一篇: 小程序和H5页面的相互跳转