Kilka wersji PHP na raz w różnych katalogach pod jednym Apache [WAMP]
Dodany: 5 maja, 2015 | Kategoria: Apache, PHPNależy pobrać fcgi dla apache:
- Apache 2.4-VC11 (64-bit): VC11/modules/modules-2.4-win64-VC11.zip
- Apache 2.4-VC11 (32-bit): VC11/modules/modules-2.4-win32-VC11.zip
- Apache 2.4-VC10 (64-bit): win64/modules-2.4/mod_fcgid-2.3.9-win64.zip
- Apache 2.4-VC10 (32-bit): win32/modules-2.4/mod_fcgid-2.3.9-win32.zip
- Apache 2.2-VC10 (64-bit): win64/modules-2.2/mod_fcgid-2.3.9-win64.zip
- Apache 2.2-VC10 (32-bit): win32/modules-2.2/mod_fcgid-2.3.9-win32.zip
Wklejamy mod_fcgid.so do wamp\bin\apache\apache2.x.x\modules
Otwieramy plik konfiguracyjny apache wamp\bin\apache\conf\httpd.conf. Znajdujemy linijkę:
1 | LoadModule php5_module "C:/Wamp/bin/php/php5.5.x/php5apache2_4.dll |
I zamieniamy na
1 2 | #LoadModule php5_module "C:/Wamp/bin/php/php5.5.x/php5apache2_4.dll LoadModule fcgid_module modules/mod_fcgid.so |
Poniżej dodajemy też konfigurację dla domyślnego PHP
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | FcgidInitialEnv PATH "C:/wamp/bin/php/php5.5.x;C:/WINDOWS/system32;C:/WINDOWS;C:/WINDOWS/System32/Wbem;" FcgidInitialEnv SystemRoot "C:/Windows" FcgidInitialEnv SystemDrive "C:" FcgidInitialEnv TEMP "C:/wamp/tmp" FcgidInitialEnv TMP "C:/wamp/tmp" FcgidInitialEnv windir "C:/WINDOWS" FcgidIOTimeout 64 FcgidConnectTimeout 16 FcgidMaxRequestsPerProcess 1000 FcgidMaxProcesses 3 FcgidMaxRequestLen 8131072 # Location php.ini: FcgidInitialEnv PHPRC "C:\wamp\bin\php\php5.5.x" FcgidInitialEnv PHP_FCGI_MAX_REQUESTS 1000 Options Indexes FollowSymLinks ExecCGI AddHandler fcgid-script .php FcgidWrapper "C:/wamp/bin/php/php5.5.x/php-cgi.exe" .php |
Restartujemy WAMPa i sprawdzamy, czy adres http://localhost/?phpinfo=1 działa.
Przechodzimy do konfiguracji VHOSTów do sekcji <Directory> danego hosta, albo tworzymy plik .htaccess (otaczamy wtedy fragmenty w <Files ~ "\.php$">...</Files> w katalogu w którym chcemy innej wersji PHP i dodajemy:
1 | FcgidWrapper "D:/wamp/bin/php/php5.3.x/php-cgi.exe" .php |
Lub, jeśli nie chcemy, żeby do konfiguracji został użyty ten sam plik INI dla domyślnego PHP:
1 | FcgidWrapper "D:/wamp/bin/php/php5.3.x/php-cgi.exe -c D:/wamp/bin/php/php5.3.x/php.ini" .php |
Druga wersja jest zapewne tą bardziej pożądaną :)
Źródła: [1], [2], [2], [3], oraz własne metody prób i błędów :)