特洛浦号巡洋舰:让ROS变成你量身定做的WEB服务器

来源:百度文库 编辑:偶看新闻 时间:2024/04/19 12:29:43

 

如何用ROS来做一台简单的WEB服务器,我也提供了一些思路,但都太过于复杂,难以实用。

介绍一种比较简单的修改方法:把HTTP目录链接到FTP目录下,不就可以很方便的修改了吗?

【试验】
马上行动测试一下:
1,关闭ROS,我的是学习用的,可一说关就关,否则就要找一个空闲时间了。
2,关闭另一台Linux机,同样是学习用的,没什么顾虑。
3,打开机箱,把ROS的硬盘拔下来挂在Linux机的IDE3上,即第二硬盘控制器的主硬盘上,当然挂其他几个位置也没关系的。
4,启动Linux,我的是RHEL AS4, 其他的版本也没什么关系,只要能支持ETX3文件系统就可以了,目前常见的LINUX基本上都没问题。
5,以root登陆,挂载ROS系统,用如下命令:
mount /dev/hdc1 /mnt
说明:成功后,进入/mnt目录就是ROS的东西了
/dev/hdc1,其中的hd表示IDE硬盘,c表示第3位置上的硬盘(a:1,b:2,c:3,d:4),1是指该硬盘上的第一个分区,我的ROS只有一个分区,所以是1。
/mnt 是系统上的一个空目录,当然你也可以用其他空目录
6,进入ROS文件系统,
cd /mnt
由于ROS是和个性化的系统,不知道有没有链接命令,先查找一下:
find . -name ln -print
显示 /bin/ln
找到了,有戏。然后在启动的时候加上一条链接命令:
[ ! -f /var/pckg/http ] && ln -s /home/web /var/pckg/http
用vi来编辑启动文件:
vi /mnt/etc/rc.d/rc.sysinit
移到最后,在exit 之前加入下面的一行:
[ ! -f /var/pckg/http ] && ln -s /home/web /var/pckg/http
然后保存文件
说明:/var/pckg目录是ROS的ftp目录,/home/web是ROS的http目录
7,卸载ROS文件系统,再关闭Linux
cd; umount /mnt; halt
8,把ROS硬盘重新装回去,开机
9,在Windows上打开winbox-->files,激动人心的画面就出来了,多了http目录,该目录下的文件就是ROS的WEB文件,修改了该目录下的文件,就是修改了WEB文件。
接下来的就简单了,WEB页面自己想怎么改就怎么改了,主页文件是index2.html。

【关键】
说了那么多,其实关键就在一点:ln -s /home/web /var/pckg/http

【用途】
ROS上的WEB,只能做一些静态页面,页面更新需要手动完成,适合于做广告页面,首次转向的页面,DNS错误的转向页面等要求不高的不想另建一个web服务器的应用.
另外,提供动态页面的思路,供有兴趣的参考:可以用CGI实现, CGI目录也可以用ln -s的方式放在FTP上以便更新,CGI程序用C语言在别的Linux上编写,编译后FTP更新。

【警告】
该方法需要有Linux/Unix的基本知识,不要随意改变ROS的其他系统文件。
我在ROS 2.7.27上测试成功,原则上其他版本也没问题,但没测试过,不肯定。
对于测试不成功以及产生的其他问题,本人不负责任。
由于改动了ROS系统,因此存在风险,请慎用。