使用mod_fcgid模块配置多个PHP版本
1. **确保启用 `mod_fcgid` 模块
打开Apache的配置文件 `httpd.conf`,确保以下行没有被注释:
```apache
LoadModule fcgid_module modules/mod_fcgid.so
```
2. **配置虚拟主机**
编辑虚拟主机配置文件 `httpd-vhosts.conf`,添加以下内容:
```apache
# 虚拟主机1,使用PHP 7.4
<VirtualHost *:80>
ServerName yoursite1.local
DocumentRoot "c:/wamp/www/yoursite1"
<Directory "c:/wamp/www/yoursite1">
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
<IfModule fcgid_module>
FcgidInitialEnv PHPRC "C:\\wamp\\bin\\php\\php7.2.34"
FcgidInitialEnv PATH "C:\\wamp\\bin\\php\\php7.2.34;C:\\WINDOWS\\system32;C:\\WINDOWS;C:\\WINDOWS\\System32\\Wbem;"
FcgidInitialEnv SystemRoot "C:\\Windows"
FcgidInitialEnv SystemDrive "C:"
FcgidInitialEnv TEMP "C:\\WINDOWS\\TEMP"
FcgidInitialEnv TMP "C:\\WINDOWS\\TEMP"
FcgidInitialEnv windir "C:\\WINDOWS"
FcgidPassHeader Authorization
<Files ~ "\.php$">
Options Indexes FollowSymLinks ExecCGI
AddHandler fcgid-script .php
FCGIWrapper "c:/wamp/bin/php/php7.4.0/php-cgi.exe" .php
</Files>
</IfModule>
</VirtualHost>
3. **调整 PHP 配置**
确保每个PHP版本的 `php.ini` 文件路径配置正确。在 `php.ini` 文件中调整 `cgi.force_redirect` 和 `cgi.fix_pathinfo` 设置:
```ini
cgi.force_redirect = 0
cgi.fix_pathinfo=1
```
4. **修改 Windows Hosts 文件**
打开 Windows Hosts 文件:`C:\Windows\System32\drivers\etc\hosts`,添加以下行:
```plaintext
127.0.0.1 yoursite1.local
127.0.0.1 yoursite2.local
```
5. **重启 WAMP**
重启WAMP服务器以使更改生效。
### 验证配置
1. 打开浏览器并访问 `http://yoursite1.local` 和 `http://yoursite2.local`。
2. 创建一个简单的 `info.php` 文件,包含以下内容:
```php
<?php
phpinfo();
?>
```
3. 通过访问 `http://yoursite1.local/info.php` 和 `http://yoursite2.local/info.php` 来验证每个站点使用的PHP版本是否正确。
通过这种方法,你可以配置WAMP服务器上的多个虚拟主机,每个虚拟主机使用不同的PHP版本。