CGI perl 스크립트가 있습니다. 먼저 chdir
을 지정한 위치로 이동 한 다음 명령을 실행합니다 (이 명령은 입력 파일 build.xml을 사용하므로이 지정된 디렉토리에서만 실행됩니다. 이 디렉토리에있는이 명령을 다른 위치에서 실행하려고하면 "Build failed Buildfile: build.xml does not exist!
"오류가 발생합니다. cmd에서이 perl 스크립트를 실행하면 스크립트가 제대로 작동합니다. 하지만 브라우저에서 작동하지 않습니다, 그것은 동일한 오류를 throw합니다 "Build failed Buildfile: build.xml does not exist!
"어떻게 이런 일이 일어날 수 있습니까? 누군가가이 문제를 해결하는 방법을 도울 수 있습니까? 다음은 어떻게 그렇게한다는 것입니다 내 디렉토리 chdir('G:\\Documents and Settings/Administrator/eworkspace/Sample');
으로 변경 점점되지 발견 CWD를 사용하여 코드Perl CGI 스크립트는 cmd에서 작동하지만 브라우저에서는 작동하지 않습니다.
#!/usr/local/bin/perl - w
use strict;
use CGI ':standard';
print header;
print start_html("welcome");
print "<h1>welcome</h1>\n";
print_prompt();
print end_html;
sub print_prompt {
print start_form;
print "<em>welcome</em><br>";
chdir('G:\\Documents and Settings/Administrator/eworkspace/Sample');
print `ant`;
}
입니까?
[Cwd] (http://perldoc.perl.org/Cwd.html)를 사용하여 디렉토리 변경이 작동하는지 확인하십시오. 또한 '엄격한 사용'. – simbabque
감사합니다. cwd를 사용하면 chdir ('G : \ Documents and Settings/Administrator/eworkspace/Sample')로 디렉토리가 변경되지 않는다는 것을 알았습니다. – mac
명령 줄에서는 작동하지만 브라우저에서는 작동하지 않고 스크립트가 디렉토리를 변경하지 않는 경우 폴더 사용 권한을 확인하여 웹 서버가 액세스 할 수 있는지 확인할 수 있습니다. 웹 서버가 해당 디렉토리에 액세스 할 수없는 것 같습니다. – Analog