Posts Tagged ‘DNS’

Apache下配置sandbox

Posted in work with tags , , , .

May 8, 08

No reply

今天google了一下, 把长久以来很想做的一个apache VirtualHost配置搞定了.

基本功能是这样的: 在地址栏输入sandbox能访问我建在原来localhost下的document root/sandbox文件夹.

分开来,包括了两大部分: 将sandbox解析到本机(http request给Apache); 然后Apache根据server name返回内容.

解析sandbox

当你往浏览器地址栏里面输入http://sandbox/的时候, 浏览器会把sandbox作为一个域名, 查询与之相关联的IP. 浏览器首先去查看系统的host文件有没有列出这个域名. 如果有, 将直接返回host文件里的IP. 没有, 则要找网络连接里面配置的DNS服务器查询IP.

我要达到的目的让浏览器查询sandbox时返回本机IP 127.0.0.1, 最简单的办法就是修改host文件啦.

host文件在我的系统(Vista)的C:\Windows\System32\drivers\etc内. 用记事本打开, 在文件末端添加一行:

127.0.0.1    sandbox

这样浏览器就会将sandbox指向127.0.0.1.

配置Apache

浏览器把http请求顺利的转到了本机, 接下来应该是Apache忙活了. 为了让Apache找到sandbox对应的本地目录, 就需要配置一个VirtualHost.  我的配置是这样的:

NameVirtualHost 127.0.0.1:80
<VirtualHost 127.0.0.1:80>
DocumentRoot "F:/web"
ServerName localhost
</VirtualHost>

<VirtualHost 127.0.0.1:80>
DocumentRoot "F:/web/sandbox"
ServerName sandbox
</VirtualHost>

具体配置说明去看文档, 这里就不讲了. 上面配置的意思就是127.0.0.1下域名为localhost的内容在F:/web, 而sandbox内容在F:/web/sandbox.

到这里, 浏览器就能收到Apache的输出, 显示存在F:/web/sandbox下的内容了.

未解决的问题

host文件似乎不能用将域名绑定到一个端口上去. 比如我尝试下面的配置就失败了:

127.0.0.1:8000    jira

http://jira/不会连接到我的Tomcat上, 而是很”智能”地跑到jira.com去了-_-!!!也许这种问题需要其它的解决方案咯.