Mis*_*sha -1 apache perl server
我继承了一些用Perl编写的代码,并在服务器和客户端之间发出HTTP请求.我想打印服务器代码中的一些变量,但是当我使用print语句时会引发错误.变量是标量,数组或散列.我想将输出打印到终端,仅用于调试目的.我得到的错误很少 -
malformed header from script 'get_config': Bad header: self=$VAR1 = bless( {
Response header name 'self=Bio' contains invalid characters, aborting request
Run Code Online (Sandbox Code Playgroud)
一个简单的print 'test'引发错误就像
malformed header from script 'get_config': Bad header: test
Run Code Online (Sandbox Code Playgroud)
如何打印变量值而没有任何错误?
你根本没有很好地解释自己.但是,从你得到的错误来看,我认为这是一个CGI程序.
CGI程序将其输出发送到STDOUTWeb服务器捕获它并以各种方式处理它.为了使其工作,程序打印到的数据STDOUT需要遵循各种规则.这些规则中最重要的可能是程序的第一个输出必须是CGI标题 - 至少,这些标题应包含Content-type:标题.
我假设您在程序发送CGI标头之前尝试显示调试输出.那不行.
但是你真的想发送调试输出STDOUT吗?这似乎是一个坏主意.如果您使用warn()而不是print()那么您的输出将STDERR转而 - 并且在大多数Web服务器中,STDERR连接到Web服务器的错误日志.
要更好地控制生成的输出warn(),请参阅CGI :: Carp模块.
| 归档时间: |
|
| 查看次数: |
55 次 |
| 最近记录: |