关闭

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

1185人阅读 评论(0) 收藏 举报

相信大多数朋友都为网络应用程序的部署问题伤过脑筋,本机上运行好好的程序,换台机器就出问题,或者需要更改很多相关设置。尤其是在同时编写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文件中相应的项删掉即可。客户端编译好的模块无需再次编译。

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:365402次
    • 积分:5910
    • 等级:
    • 排名:第4294名
    • 原创:205篇
    • 转载:5篇
    • 译文:1篇
    • 评论:109条
    最新评论