私はかなり長い間グーグルとトピックを調査してきましたが、1つの完全なガイドしか見つかりませんでした...それはうまくいきません。
Apache2
--CentOS 5.3
でmod_fcgidを介してPHP
を実行したいと思います。
現在の構成では、500 Internal Server Error
-ファイルで.php
を取得します。理由を理解するのを手伝ってくれませんか。 :)
httpd.conf:
<Directory "/var/www/html/">
Options Indexes ExecCGI
AllowOverride None
Allow from all
AddHandler fcgid-script .php
FCGIWrapper /var/www/cgi-bin/php5/php-fcgi-starter .php
</Directory>
/ var/www/cgi-bin/php5/php-fcgi-starter:
#!/bin/sh
PHPRC=/etc/
export PHPRC
export PHP_FCGI_MAX_REQUESTS=5000
export PHP_FCGI_CHILDREN=8
exec /usr/bin/php-cgi
php-cgi -v:
PHP 5.2.6 (cgi-fcgi) (built: May 2 2008 16:01:17)
Copyright (c) 1997-2008 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2008 Zend Technologies
with the ionCube PHP Loader v3.1.29, Copyright (c) 2002-2007, by ionCube Ltd.
SeLinux
はオフになっています。
編集: ログ...
[Mon Nov 02 05:17:49 2009] [notice] Apache/2.2.3 (CentOS) configured -- resuming normal operations
[Mon Nov 02 05:17:53 2009] [error] Not even headers for me :(
[Mon Nov 02 05:17:54 2009] [notice] mod_fcgid: call /var/www/html/phpinfo.php with wrapper /var/www/cgi-bin/php5/php-fcgi-starter
[Mon Nov 02 05:17:54 2009] [notice] mod_fcgid: server /var/www/html/phpinfo.php(13917) started
[Mon Nov 02 05:17:57 2009] [notice] mod_fcgid: process /var/www/html/phpinfo.php(13917) exit(communication error), terminated by calling exit(), return code: 120
SuExec_log:
[2009-11-02 04:55:27]: uid: (10001/www) gid: (2524/2524) cmd: php5
[2009-11-02 04:55:27]: target uid/gid (10001/2524 or 2523) mismatch with directory (10001/2523) or program (0/0)
[2009-11-02 04:57:19]: uid: (10001/www) gid: (2524/2524) cmd: php-fcgi-starter
[2009-11-02 04:57:19]: target uid/gid (10001/2524 or 2523) mismatch with directory (0/0) or program (0/0)
ありがとうございました :)
SUExecは、ディレクトリ(/var/www/html/
)とバイナリ(/var/www/cgi-bin/php5/php-fcgi-starter
)が同じユーザー/グループによって所有されていることを要求しています。 10001/2523
がdirを所有し、rootがphp-fcgi-starterを所有しているように見えます。それを修正するか、SUExecをオフにしてください。