Fedora 20でcgi-perlのパラメータを渡す方法は?

Fedora 20でcgi-perlのパラメータを渡す方法は?

私はFedora-20でApacheサーバーを使用しています。ローカルサーバーでperl-cgiプログラムを実行しようとしても機能しません。 htmlとperlコードを添付しました。

HTMLプログラム:

<html>
<head><title>Demo</title>
</head>
<body>
<form action="/cgi-bin/fam.cgi" method="post">
<input type="text" name="username">
<input type="submit">
</form>
</body>
</html>

正常に実行され、以下が出力されます。

#!/usr/bin/perl
print "Content-type: text/html\n\n";
print "hello world\n";

ただし、パラメータを渡すと機能しません。

#!usr/bin/perl -wT 
use CGI;
my $username = param('username');
print header;
print start_html("Perl page");
print h2("hello $username");
print end_html; 

cgiモジュールをインストールしました。どんな提案がありますか?

ベストアンサー1

私の考えには、以下を追加する必要があると思います。

my $q = CGI->new();
my $username = $q->param('username');
...

したがって、内容全体は次のようになります。

#!/usr/bin/perl -wT
use strict;
use warnings;
use CGI;

my $q = CGI->new();
my $username = $q->param('username');

print $q->header();
print $q->start_html("Perl page");
print $q->h2("Hello, $username!\n");
print $q->end_html;

詳細をご覧ください。ここ
また、ファイルに「/」がありません。

#!usr/bin/perl -wT

私は次のようにすべきだと思います。

#!/usr/bin/perl -wT

おすすめ記事