首页 > 系统相关 >为Nginx和Apache配置多版本PHP、切割多个conf文件

为Nginx和Apache配置多版本PHP、切割多个conf文件

时间:2023-02-16 15:00:33浏览次数:34  
标签:php Nginx conf Apache PHP fastcgi

有时候我们的项目不可能都是同一个PHP版本,需要每个项目都配置不同版本的PHP,宝塔和PHPStudy就是通过以下配置实现的:

Nginx

切割conf(非选)

nginx.conf添加

include vhosts/*.conf;

这样Nginx会自动引入当前目录->vhosts目录下的所有*.conf文件,方便每个项目单独管理Nginx配置文件

配置多版本PHP

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版本

Apache

切割conf(非选)

httpd.conf添加

Include conf/vhosts/*.conf

这样Apache会自动引入Apache安装目录->conf->vhosts目录下的所有*.conf文件,方便每个项目单独管理Apache配置文件

配置多版本PHP

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

指定对应目录即可

标签:php,Nginx,conf,Apache,PHP,fastcgi
From: https://www.cnblogs.com/cxfs/p/17126799.html

相关文章

  • nginx配置跨域
    nginx,server或location段添加:add_headerAccess-Control-Allow-Origin'*';add_headerAccess-Control-Allow-Credentials"true";add_headerAccess-Control-Allow-Me......
  • (Pytorch第二天)CommandNotFoundError: Your shell has not been properly configured t
    我在cmd里执行condaactive,是没有问题的,但是在powershell里会报标题的错按照各种提示以及查的资料,都说执行condainit或者condainitcmd.exe等诸如此类的就能解决但是......
  • nginx 动静分离及转发规则
    目录nginx动静分离简单配置nginx的动静分离根据目录分开通过请求分离根据扩展名分离根据客户端标识进行分离使用客户端的pc和移动分离优化nginx反向代理的健康检查直接添......
  • nginx windows 优化
    maximumnumberofdescriptorssupportedbyselect()is1024whileconnectingtoupstream 1.官网下载新版本的nginxnginxforwindows下载地址:http://nginx-wi......
  • Nginx 日志
       参数说明   示例$remote_addr客户端地址10.0.1.10$remote_user客户端用户名称-$time_local访问时间和时区 15/Feb/2023:15:47:36+080......
  • Nginx 一网打尽
    早期的业务都是基于单体节点部署,由于前期访问流量不大,因此单体结构也可满足需求,但随着业务增长,流量也越来越大,那么最终单台服务器受到的访问压力也会逐步增高。时间一长,单......
  • scripts/config/mconf: error while loading shared libraries: libncurses.so.5: can
    解决缺少libncurses.so.5库文件$sudoaptinstallapt-file$sudoapt-fileupdate$sudoapt-filefindlibncurses.so.5$sudoaptinstalllibncurses5———————......
  • Caused by: java.lang.ClassNotFoundException: org.apache.commons.fileupload.FileI
    今天复习javaweb的时候遇到tomcat部署运行不了的问题。这个时候请注意,注意是否jar成功导入。显然我这里是有的,但tomcat就不一定了显然tomcat并没有找到需要的jar包这......
  • ubuntu 安装 nginx
    1.在线安装nginxsudoaptupdatesudoapt-yinstallnginx2.检查是否安装成功nginx-v3.安装之后的文件结构#所有的配置文件/etc/nginx#虚拟主机/etc/nginx/......
  • nginx限制ip请求次数 以及并发次数
      如何设置能限制某个IP某一时间段的访问次数是一个让人头疼的问题,特别面对恶意的ddos攻击的时候。其中CC攻击(ChallengeCollapsar)是DDOS(分布式拒绝服务)的一种,也是一种常......