ROS变成你量身定做的WEB服务器

write by amen in 资料 - at 2011-12-15 10:12

 

 

 

【引子】

近来,总有人在问,如何用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系统,因此存在风险,请慎用。

没有评论

还没有任何评论。

发表评论

(必填)

(必填)