- PHP
- 2024-05-22
PHPにはモジュール版・CGI版の2種類があります。
主な違いは次の通りです。
モジュール版:ApacheのrootユーザーでPHPを実行・処理が速い
CGI版:ユーザー毎のPHP実行環境・セキュリティや安全性に優れている・モジュール版より遅い
XAMPPを使ってローカル環境で開発している場合、特に切り替えが必要なケースは稀かと思いますが、
参考までに切り替えの方法を記載しておきます。
httpd.conf
以下の行をコメント解除します。
#LoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so
httpd-xampp.conf
モジュール用セットアップの記述をコメントアウト
※PHP7の場合の例です。
# # PHP-Module setup # LoadFile "/xampp/php/php7ts.dll" LoadFile "/xampp/php/libpq.dll" LoadFile "/xampp/php/libsqlite3.dll" LoadModule php7_module "/xampp/php/php7apache2_4.dll" <FilesMatch "\.php$"> SetHandler application/x-httpd-php </FilesMatch> <FilesMatch "\.phps$"> SetHandler application/x-httpd-php-source </FilesMatch>
CGI用セットアップの記述をコメント解除します。
# # PHP-CGI setup # #<FilesMatch "\.php$"> # SetHandler application/x-httpd-php-cgi #</FilesMatch> #<IfModule actions_module> # Action application/x-httpd-php-cgi "/php-cgi/php-cgi.exe" #</IfModule>
PHPINFOを表示し、Server API
の欄を確認します。
こちらがApache 2.0 Handler
となっていればモジュール版、
CGI/FastCGI
になっていればCGI版で動作していることになります。