AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 691151
Accepted
JellicleCat
JellicleCat
Asked: 2015-05-12 06:35:19 +0800 CST2015-05-12 06:35:19 +0800 CST 2015-05-12 06:35:19 +0800 CST

为什么要在 Apache 配置中监听特定的 IP 地址?

  • 772

我看到一个 Apache 配置可以指定一个特定的 IP 地址来监听(至少在定义 VirtualHosts 时):

NameVirtualHost *:80

<VirtualHost *:80>

在什么情况下指定地址而不是使用通配符更有优势?

(我最近在一台IP地址发生变化的机器上工作,并且配置Apache的那个人没有使用通配符,所以它除了404之外没有任何服务。我没有想到寻找这个配置,所以问题直到我让他和我一起排除故障才得到解决。我能否从服务或日志中获得更多调试信息来帮助我识别这个问题?)

apache-2.4
  • 2 2 个回答
  • 116 Views

2 个回答

  • Voted
  1. Itai Ganot
    2015-05-12T06:38:16+08:002015-05-12T06:38:16+08:00

    如果您在同一台服务器上托管多个站点,则可以使用不同的主机名或不同的 IP 将它们分开。

    例如:

    基于主机的虚拟主机配置:

     NameVirtualHost *:80
    <VirtualHost employees.nationalpurchasingpartners.com:80>
     ServerAdmin [email protected]
     DocumentRoot /var/www/intranet/public_html
     ServerName employees.nationalpurchasingpartners.com
    </VirtualHost>
    
    <VirtualHost procurementnews.com:80>
     ServerAdmin [email protected] 
     DocumentRoot /var/www/procurement/public_html
     ServerName www.procurementnews.com
     ServerAlias procurementnews.com *.procurementnews.com
    </VirtualHost>
    

    基于 IP 的虚拟主机配置:

    <VirtualHost 192.168.0.1:80>
    ServerAdmin [email protected]
    DocumentRoot /groups/smallco/www
    ServerName smallco.example.com
    ErrorLog /groups/smallco/logs/error_log
    TransferLog /groups/smallco/logs/access_log
    </VirtualHost>
    
    <VirtualHost 192.168.0.2:80>
    ServerAdmin [email protected]
    DocumentRoot /groups/baygroup/www
    ServerName baygroup.example.com
    ErrorLog /groups/baygroup/logs/error_log
    TransferLog /groups/baygroup/logs/access_log
    </VirtualHost>
    

    您可以在 Apache官方文档站点上找到更多信息。

    • 2
  2. Best Answer
    HBruijn
    2015-05-12T07:23:03+08:002015-05-12T07:23:03+08:00

    将特定虚拟主机绑定到特定 IP 地址的最常见实际原因通常是在默认 HTTPS 端口上支持不同 HTTPS 站点的不同 SSL 证书。
    随着现代浏览器对SNI 支持的广泛适应,这不再是一个大问题。

    第二个实际原因是在多宿主 Web 服务器上。内部网络上的 Intranet 网站仅限于该网络接口,强制它只能从内部 LAN 而不是 WAN 接口访问(例如,带有欺骗的 Host: 标头)。

    • 2

相关问题

  • SELinux 阻止 Apache 写入文件

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve