我正在尝试安装用perl编写的FileManager软件,根据它的说明,我必须将一系列文件上传到子域的cgi-bin,我希望在我的服务器上安装它。我收到的错误消息是500内部服务器错误,当我检查域名上的error_log时,错误只是说明'脚本标题的过早结束:文件名'。
我认为这可能只是软件的错误,所以我上传了一个简单的perl文件,它应该只输出一些html到屏幕,我确认这个文件在我的本地环境中工作(windows 7 + xampp) - 然后修改我在文件顶部的perl注释路径,以反映服务器上的正确路径;这样做后,我仍然收到相同的500错误代码和脚本日志的提前结束。
这告诉我这不是文件的错误,而是与我的配置设置有关 - 奇怪的是,如果我使用PuTTy在我的服务器的命令行上运行我的简单'HTML outputter'文件,我得到正确的输出。
这让我觉得它可能是文件的权限问题,但是在CHMOD将cgi-bin和文件发送到777进行测试之后,我不太确定 - cgi-bin目录是由我用来上传文件的FTP用户是PSASERV组的一部分,但是我对权限知之甚少,所以我不确定这是否相关。
我正在尝试安装软件的服务器是CentOS Linux发行版,运行PLESK 9.5.2,PERL,CGI和PHP支持都在PLESK域中的网络托管设置中启用。
答案 0 :(得分:0)
感谢您对每个对此问题感兴趣的人的意见,我最终设法解决了这个问题;我认为这是一个Plesk权限问题,要从cgi-bin运行perl脚本,必须使目录和脚本成为组'psacln'的一部分,无论脚本所有者或脚本是否设置为777或其他。