perl代码中的javascript

我使用apache中的perl-cgi代码中的javascript文件(json2.js)。但是当我在浏览器上运行它时,它无法找到源并返回以下错误; '无法加载资源:服务器响应状态为404(未找到)' 我的doumentroot路径是:/ srv / www / cgi-bin和脚本的路径:/ srv / www / cgi-bin / scripts 我这样做;
 print "<script type='text/javascript' src='./scripts/json2.js'></script>"; # Line 1
    print "<script type='text/javascript' language='JavaScript'>
    function setDetails(o,json_arrRef,arrSize){
            alert('hello='+arrSize+' || ref='+json_arrRef); // till here it works fine
            var json_obj = JSON.parse(json_arrRef);     
    }
    </script>";
如果我将第1行编辑为
print "<script type='javascript' src='./scripts/json2.js'></script>";
它找到源但在调用'JSON.parse()'时给出以下错误; '未捕获的SyntaxError:意外的令牌ILLEGAL' 难道我做错了什么?     
已邀请:
不要将静态文件放在/ cgi-bin /之内或之下的任何地方,因为服务器通常配置为以特殊方式处理该路径 确保你的类型属性正确,JavaScript的内容类型是text / javascript而不仅仅是javascript(从技术上讲它应该是应用程序/ javascript,但为了浏览器假装它是text / javascript) 不要将浏览器中的JavaScript错误与Perl代码进行比较,并查看Web服务器输出的内容(即HTML和JavaScript源和/或哪些请求提供404或其他HTTP错误代码)     
将“./scripts/json2.js”替换为“/scripts/json2.js”。     

要回复问题请先登录注册