如何“测试”基于名称的虚拟主机?


10

我们的网站mysite.com将托管在具有虚拟主机(基于名称)的服务器上10.20.30.40。但是,DNS记录当前指向66.77.88.99

我想在测试时保持指向这些DNS记录的位置66.77.88.9910.20.30.40反正我有什么办法可以访问吗?

由于目标服务器使用虚拟主机,因此我不能简单地输入IP地址以在目标站点上进行测试。另外,我无法控制目标服务器,因此无法设置要测试的子域。


使用nc netcat并手动提交请求?使用check_http monitoring-plugins.org/doc/man/check_http.html
Zoredache 2014年

Answers:


11

将具有适当IP地址的主机名放在hosts文件中(/etc/hosts在Linux中,%SYSTEMROOT%\System32\Drivers\etc\hosts在Windows系统上),如下所示:

# IP address of your test host     FQDN of your domain
10.20.30.40                        www.mysite.com

测试后不要忘记删除条目。


12

如所指出的,将其添加到/etc/hosts是一种选择。

我通常使用“ 修改标题 Firefox插件”。
我不必每次都要进行测试时都更改系统配置并成为root用户。

另一种方法是这样使用cURL

curl -H "Host: mysite.com" http://10.20.30.40

这对于快速故障排除特别有用。
完成后,您无需删除任何内容。


3
除了设置Host标头(大概仅适用于HTTP,不适用于SNI的HTTPS),您还可以使用以下--resolv选项:curl --resolve example.com:80:192.0.2.1 --resolve example.com:443:192.0.2.2 http://example.com/
Lekensteyn 2014年

@Lekensteyn没错,使用则无法正常工作cURL。没有考虑SNI。
造假者2014年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.