问题描述:1)目的:
利用 boa 和 cgi 实现文件管理功能。
2)平台:
VMWare 7.0
ubuntu 10.04
Boa 0.94.13
3)Boa在虚拟机上安装完毕,能够访问默认的 html,能够执行cgi程序。
问题是在cgi程序里,我完成的功能是遍历虚拟机上某一指定目录,并将此目录下的所有文件及子目录按照 html 语法格式以超链接 href 的形式回复给浏览器,浏览器显示也正确。但是点击文件名的超链接的时候,却显示:
502 bad gateway ![color=#FF0000][/color]
boa默认的网页目录是www;
boa的cgi程序目录是www/cgi-bin;cgi程序即放在此目录下。
该cgi程序遍历的目录是www,能够列出所有文件。但是点击链接的时候却显示如上错误。
问题补充:后来又换了种方式,将该cgi遍历的www目录下的文件和子目录以 html 格式写入到 index.html 中,然后由cgi重定向到 index.html,我再点击超链接的时候就可以访问该文件(比如可以浏览图片)。
但是如果遍历的不是www目录,则仍是出现上述错误;而且该方法无法进入www下的子目录。
疑问及猜测:boa本身是不是具有文件下载的功能?如何设置或者修改才能浏览其他目录的文件呢?网上搜该问题,大多说是格式问题,或权限问题。
请有经验的大侠,指点一二,不胜感激。。。
这种问题无非就是文件权限和路径的问题,查看路径正确否?连接正确否?耐心点!
我是有C语言写的cgi程序,虚拟机上可以运行,可是在开发板上面却不行了。这个问题卡了20天了,让大家笑话了。
借楼主的帖子,争取下大家的关注,希望楼主不要介意。
经检验,是管道是空的,猜想可能是execve()执行可执行文件的时候失败之类的原因