在REBOL2中输出到stderr?

时间:2015-01-13 01:59:16

标签: cgi rebol rebol2

我正在尝试让我的CGI脚本在我的Web主机上运行(在FreeBSD上运行)。调试为什么我不断得到脚本标题的过早结束"错误,他们的支持建议我将所有输出重定向到stderr,而不是print。在查看如何执行此操作时,我遇到了一个非常古老的RAMBO ticket,但看起来它从未实现过。

根据this question的一些答案,似乎我应该能够call {echo Hello, world >&2}来实现这一目标,但它并不起作用。

如何在REBOL2中写入stderr?

3 个答案:

答案 0 :(得分:0)

对于我的CGI特定场景,我有一个非常糟糕的解决方法。由于写入Perl中的stderr(我完全不熟悉)是一个单行程序,我现在从Perl调用REBOL脚本并从那里将其输出打印到stderr:

#!/usr/bin/perl 

use strict; 
use warnings; 
use CGI; 

# Note the backticks 
my $the_string = `/home/public/rebol -csw test-reb.cgi`; 

print STDERR $the_string; 

答案 1 :(得分:0)

此网页有一些建议http://www.liquidweb.com/kb/apache-error-premature-end-of-script-headers/ 解决你的真正问题。也许你没有在你的脚本中首先打印标题,这必须是第一件事。可能是权限不足,或者.r文件类型没有在.htaccess中正确添加为cgi able文件。你的(正确!)rebol核心exe没有正确的权利。或者你的脚本最终会无限循环?

答案 2 :(得分:0)

为Rebol cgi脚本重定向错误的一些提示: http://www.rebol.com/docs/core23/rebolcore-2.html#section-6.2