On 02/01/2013 05:08 PM, 夏凯 wrote:
On 2013年02月01日 16:44, Haiyan Lin wrote:下面的代码(注释了DBI-connect)在命令行中,第7行代码可以打出"/tmp/mysql.sock exist\n", 但通过"apache"不能打印该行,
你用-e测试过/tmp/mysql.sock是否存在了么?这样可以确认apache是否chroot 了,或者你查下apache有没有加载 chroot的模块。
1 #!/usr/bin/perl
2 use DBI;
3 use CGI qw(fatalsToBrowser) ;
4 #my $dbh = DBI->connect("dbi:mysql:host=192.168.0.106:database=seedBase:mysql_socket=/tmp/mysql.sock",'apache','apache', {'RaiseError' => 1}) or die DBI- >errstr ;
5 print "Content-type: text/plain\n\n";
6 print "mod_perl 2.0 rocks! \n";
7 print "/tmp/mysql.sock exist\n" if -e '/tmp/mysql.sock' ;
在apache的配置文件中没有chroot的字符出现,
setenforce 0后 在/path/to/httpd/logs/error_log中还是报错 [Fri Feb 01 16:54:23 2013] [error] DBI connect('host=192.168.0.106:database=seedBase:mysql_socket=/tmp/mysql.sock','apache',...) failed: Can't connect to MySQL server on '192.168.0.106' (113) at /var/www/perl/rock.pl line 4\n
没有评论:
发表评论