1 domain-name-system virtualhost apache-2.2
我只是不明白我的浏览器如何能够路由到正确的路径......当我给出虚拟主机的 ServerName 时......即使它没有在“/etc/hosts”中配置
请解释我......
这是 Virtualhost 我在说 abt
<VirtualHost *:80>
ServerName example.com
ServerAlias example
DocumentRoot "<*path*>"
RailsEnv development
<Directory "<*path*>"
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)
DNS 服务器不从 httpd.conf 中获取 ServerName
您的浏览器不会路由请求,Web 服务器部分根据浏览器发送的主机 HTTP 标头返回正确的页面。
当您在浏览器中键入 URL 并按 Enter 键时,名称将使用 DNS 解析为 IP,并且浏览器会向从 DNS 查询返回的 IP 发送 HTTP 请求。
HTTP 标头构成 HTTP 请求的核心。其中之一是您在浏览器中键入的主机或域名。
使用示例虚拟主机定义。
<VirtualHost *:80>
ServerName example.com
DocumentRoot /var/www/example.com
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)
虚拟主机配置中的 ServerName 指令与主机 HTTP 标头匹配。所以如果你输入
http://example.com
Run Code Online (Sandbox Code Playgroud)
Apache 将收到请求并尝试匹配 Host 标头
Host: example.com
Run Code Online (Sandbox Code Playgroud)
使用它的虚拟主机定义。如果找到匹配项,它将使用列在
DocumentRoot
Run Code Online (Sandbox Code Playgroud)
在上面的例子中
/var/www/example.com
Run Code Online (Sandbox Code Playgroud)
这可以是配置中定义的索引文件,也可以是目录索引(如果允许)。
http://en.wikipedia.org/wiki/Virtual_hosting#Name-based
归档时间: |
|
查看次数: |
3454 次 |
最近记录: |