文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>借助lighttpd整合开发环境

借助lighttpd整合开发环境

时间:2008-10-23  来源:freehorse

借助lighttpd整合开发环境 一直以来为了开发的方便,在Windows实用虚拟机软件安装FreeBSD/Linux等非Windows开发环境。这样能脱离物理的开发服务器,使自己的开发工作不太受制于公司的硬件环境。由于多从事后台服务器的开发工作,因此也很少实用KDE/Gnome等这些桌面管理器。这种情况下,虽然有了开发编译环境,但是使用开发文档方面不是很方便,一般的做法是下载HTML/PDF文档到Windows环境查看,这种方法有时候带来资源浪费或不便。下面以Boost开发库为例进行说明。
Boost开发库的HTML文档有两种使用方式,一是随源代码一起发行,只有HTML格式;二是在线阅读(Boost的文档好像没有单独的下载包)。在线阅读需要实时在线,有时候不方便或经济上不花算。那么另一种做法是在非Windows上安装完Boost库之后,在Windows上保留一份Boost的源代码。这样使用非Windows上的Boost开发环境,查阅Windows上的Boost文档。这样做的一个缺点是浪费资源,需要在Windows上保留一份Boost的源代码。
既然我们知道Boost的文档是随源码一起发布的,而且是以HTML的格式发布,那么我们能不能使用Web技术使用服务器上那份呢?答案当然是肯定的,只需要在开发服务器上装一个Web服务器即可,通过简单的配置能访问到Boost库文档。
通过比较,最后选择了lighttpd做为开发服务器上的Web服务器。在FreeBSD上其安装非常简单:
cd /usr/ports/www/lighttpd
make install clean
两个命令就完成了安装。
配置也不是很复杂,如果仅仅访问Boost的文档,那么只需要将文档跟目录指向Boost库源码所在目录即可:
编辑 /usr/local/etc/lighttpd.conf
修改 server.document-root    = "/home/dev/boost_1_36_0/"
启动 /usr/local/rc.d/lighttpd restart
(假设虚拟机的IP为192.168.0.2)试着在Windows上使用浏览器访问http://192.168.0.2/,Boost的文档是不是出来了?
如果在开发服务器上有多个类似与Boost这样的开发库文档需要访问,我们可以lighttpd的虚拟主机技术。假设我们开发服务器上有两个库Bosot和neon。
server.modules 中需要增加mod_simple_vhost模块。然后就是根据不同的主机设置不同的文档根目录,如下面的例子:
$HTTP["host"]=="neon.freebsd7r.woods.edu" {
   server.document-root     = "/usr/local/share/doc/neon/html"
}
$HTTP["host"]=="boost.freebsd7r.woods.edu" {
   server.document-root     = "/home/dev/boost_1_36_0/"
}
意思是当lighttpd收到的HTTP请求中,如果Host的值为neon.freebsd7r.woods.edu,那么文档根目录将指向/usr/local/share/doc/neon/html,依次类推boost.freebsd7r.woods.edu。
那么现在又面临这么一个问题,在Web浏览器一端当我们输入http://neon.freebsd7r.woods.edu时,如果能将访问请求发到我们的服务器上?这就需要我们为这几个域名设置域名解析,将其对应的IP地址指向我们的开发服务器的IP地址。在Unix/Linux环境可以编辑/etc/hosts来完成,在Windows上可以编辑WINDOWS\system32\drivers\hosts来完成。如在XP下,编辑C:\WINDOWS\system32\drivers\hosts,增加两行
neon.freebsd7r.woods.edu   192.168.0.2
boost.freebsd7r.woods.edu   192.168.0.2
我们访问的是同一台服务器,但是由于HTTP请求中的Host值的不同,lighttpd会为我们返回不同的文档根目录。
通过以上实践,减少了我在开发过程中维护开发环境的工作量,不需要仅仅因文档而在不同平台放源代码,极大的方便了开发环境的维护工作。
在实践中参考了网上的相关资源,在此一并表示感谢。
相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载