nginx规则转换apache(为Nginx和Apache配置多版本PHP、切割多个conf文件)
导读:有时候我们的项目不可能都是同一个PHP版本,需要每个项目都配置不同版本的PHP,宝塔和PHPStudy就是通过以下配置实现的:...
有时候我们的项目不可能都是同一个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指定对应目录即可
创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!