使用perl cgi将输入的数据存储在文本文件中?
我已经在我的手臂上安装了一个boa服务器。现在我正在写一个cgi脚本,在这个脚本中,我可以从其他Pc上的用户那里获得一些数据,但在同一个网络上,并将其保存在我arm中的文本文件中 这是我的CGI文件,要将数据存储在文本文件中,我需要使用use CGI来获取输入的数据,但是当我在这段代码上取消注释时,我得到错误502错误网关CGI不符合CGI/1.1。需要帮助使用perl cgi将输入的数据存储在文本文件中?,perl,Perl,我已经在我的手臂上安装了一个boa服务器。现在我正在写一个cgi脚本,在这个脚本中,我可以从其他Pc上的用户那里获得一些数据,但在同一个网络上,并将其保存在我arm中的文本文件中 这是我的CGI文件,要将数据存储在文本文件中,我需要使用use CGI来获取输入的数据,但是当我在这段代码上取消注释时,我得到错误502错误网关CGI不符合CGI/1.1。需要帮助 #!/usr/bin/perl use strict; use warnings; #use CGI; print "Content-ty
#!/usr/bin/perl
use strict;
use warnings;
#use CGI;
print "Content-type: text/html\n\n";
#open (MYFILE, '>>guestbook.txt');
# print MYFILE "1111111\n";
# close (MYFILE);
print <<"EOF";
<HTML>
<HEAD>
<TITLE>Hello, world!</TITLE>
<p id="demo"></p>
<script type="text/javascript">
function copyText()
{
document.getElementById("field2").value=document.getElementById("field1").value;
document.getElementById("demo").innerHTML = Date();
}
</script>
</HEAD>
<BODY>
<H1>Hello,</H1>
Enter Email Address: <input type="text" id="field1" value="Hello1 World!"><br>
Field2: <input type="text" id="field2">
<br><br>
<button onclick="copyText()">Copy Text</button>
</BODY>
</HTML>
EOF
502网关错误CGI不符合CGI/1.1
通常,此错误是由于权限引起的。尝试向其他人添加读取和执行访问权限
chmod o+rx yourscript.cgi
检查cgi脚本的文本,查看它是使用unix行结尾\n还是使用dos/windows行结尾\r\n 您可以在shell中执行此操作:
$ od -c mycgiscript.pl
如果您发现您的文件充满了windows行结尾,请执行以下操作:
$ tr -d '\r' mycgiscript.pl > /tmp/mycgiscript.pl
$ cp /tmp/mycgiscript.pl mycgiscript.pl
$ rm /tmp/mycgiscript.pl
确保读取/执行位不会被重置,然后再次尝试运行脚本。非常感谢,实际上我检查了错误日志,发现我的一些perl模块丢失了。现在它开始工作了 我的CGI文件的权限是正确的。仅通过添加USE CGI,我就知道了坏网关错误。发生这种情况时,您的错误日志中是否有任何消息?