使用hosts文件建立健壮的网络开发/测试环境

相信大多数朋友都为网络应用程序的部署问题伤过脑筋,本机上运行好好的程序,换台机器就出问题,或者需要更改很多相关设置。尤其是在同时编写WebService服务端和客户端的时候,程序调试是在本机进行,所以,一些网络相关的特性不能表现出来。比如,我们测试的服务器地址和真实运行的服务器地址不同。

其实这个问题,我们只需使用系统的DNS预解析来解决

windows操作系统下有一个hosts文件,系统用它来为某个域名指定IP地址,我们可以利用它来模拟一个真实的网络程序运行环境。

用文本编辑器打开hosts文件(windows系统位于x:/windows/system32/drivers/etc/下,X为系统所在盘符,文件没有扩展名),会看到类似如下内容:

————————————————————————————

# Copyright (c) 1998 Microsoft Corp.
#
# This is a sample HOSTS file used by Microsoft TCP/IP stack for Windows98
#
# This file contains the mappings of IP addresses to host names. Each
# entry should be kept on an individual line. The IP address should
# be placed in the first column followed by the corresponding host name.
# The IP address and the host name should be separated by at least one
# space.
#
# Additionally, comments (such as these) may be inserted on individual
# lines or following the machine name denoted by a ‘#’ symbol.
#
# For example:
#
#      102.54.94.97     rhino.acme.com          # source server
#       38.25.63.10     x.acme.com              # x client host

127.0.0.1       localhost

————————————————————————————

# 开头的为注释,最后一行127.0.0.1       localhost是说将localhost指定为IP127.0.0.1,也就是我们的回路IP

因此,我们可以添加我们自己的指定IP解析,比如:

127.0.0.1     www.mywebsite.com

保存。那么在浏览器中输入www.mywebsite.com,我们会打开127.0.0.1这个IP地址。

利用该文件的好处是,IIS所接收到的请求权限完全是远程状态的,而不是本机的(为了方便调试,开发工具会对本机IP开放特殊权限),所以避免了因为开发工具对于本机IP权限放宽,导致程序移植之后无法用相应权限运行的问题。

利用这个特性,你完全可以在编写WebService的时候使用真实域名地址,这样在客户端程序调试的时候使用hosts的配置,而当程序正式上线运行的时候,将hosts文件中相应的项删掉即可。客户端编译好的模块无需再次编译。

标签:
文章分类 FK Coding

发表评论

电子邮件地址不会被公开。 必填项已用 * 标注

*

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

点赞
如果您觉得很赞,我将非常乐意接受虚拟币的捐赠,以示您对我的肯定。

比特币钱包地址:
1PqpqA8FyH3NbfCrbcRd1YxQk3LEsSEYDV
莱特币钱包地址:
LRTdmovGGVEHCKWz7JdL9aiB7VZkuNycJf
站点勋章
网站统计