微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Nginx和Apache怎么配置多版本PHP

这篇文章主要讲解了“Nginx和Apache怎么配置多版本PHP”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Nginx和Apache怎么配置多版本PHP”吧!

有时候我们的项目不可能都是同一个 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

指定对应目录即可。

感谢各位的阅读,以上就是“Nginx和Apache怎么配置多版本PHP”的内容了,经过本文的学习后,相信大家对Nginx和Apache怎么配置多版本PHP这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是编程之家,小编将为大家推送更多相关知识点的文章,欢迎关注!

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐