2012-05-16 108 views
2

我嘗試編寫一個perl_mod腳本,但它說:「內部服務器錯誤」。modperl使用模塊時出現內部服務器錯誤

這是模塊文件:(mm1.pm)

package mm1; 
use strict; 
use XML::Simple; 
use DBI; 

require Exporter; 
our @ISA = qw(Exporter); 
our @EXPORT_OK = qw(asd); 
our @EXPORT = qw(asd); 

sub asd(){ 
    print "2222"; 
} 

這是主要文件:(main.perl)

#!/usr/bin/perl -w 
use strict; 
use CGI qw/:standard/; 
use CGI::Carp qw/fatalsToBrowser warningsToBrowser/; 
use mm1; 

print header(-type => 'text/html', -charset=>'utf-8'); 
print "asdasd"; 

,如果我嘗試不運行 「使用MM1;」這個main.perl然後成功。

什麼問題?

謝謝!

+3

查看錯誤日誌以查找更多信息。另請參閱:從[堆棧溢出Perl常見問題](http://stackoverflow.com/questions/tagged/perl?sort=faq):[我如何解決我的Perl CGI腳本?](http://stackoverflow.com/questions/2165022/how-can-i-troubleshoot-my-perl-cgi-script)部分適用 – daxim

+0

猜測:它找不到mm1模塊,因爲它不在你的'@ INC'中。做一個'使用lib'路徑到/ module /',或者把模塊放在現有的@ INC路徑之一中。或者,該模塊不會自行編譯。用'1;'結束。閱讀@daxim說的是什麼來獲取確切的錯誤信息,以及如何解決這個問題。 – Konerak

+0

(順便說一下,在儘可能小的問題上做得很好!) – Konerak

回答

0

這不是一個mod_perl模塊,它是一個CGI程序。

(第一個)問題幾乎可以肯定的是,您從模塊文件的末尾省略了1;。但查看Web服務器錯誤日誌將確認。

+1

也許它運行在使用腳本的mod_perl模式之一下。他從來沒有說過它是一個模塊。 –

相關問題