有時候我們的專案不可能都是同一個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
指定對應目錄即可
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/544082.html
標籤:PHP
上一篇:紅黑樹——一種自平衡的二叉樹
