You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过Puppet apache::vhost生成api.conf并限定仅在指定服务器生效

Puppet Apache VHost 配置修正方案

1. 指定自定义配置文件名(api.conf)

默认情况下apache::vhost模块会基于servername自动生成配置文件名,要改为api.conf,只需在资源中添加filename参数并显式指定值:

apache::vhost { 'api_vhost':
  servername      => 'api.software.com',
  documentroot    => '/var/www/api',
  # 补充你的其他VirtualHost配置参数(如端口、SSL设置等)
  filename        => 'api.conf', # 强制指定配置文件名为api.conf
}

这个参数会覆盖模块默认的命名规则,直接在/etc/apache2/sites-available/目录下生成api.conf文件。

2. 限定仅在xyz02.software.com执行配置

通过Puppet的事实变量(facts)结合条件判断,只在目标服务器上创建该VHost配置:

# 匹配目标服务器的完全限定域名
if $facts['fqdn'] == 'xyz02.software.com' {
  apache::vhost { 'api_vhost':
    servername      => 'api.software.com',
    documentroot    => '/var/www/api',
    filename        => 'api.conf',
    # 其他你的VirtualHost配置参数
  }
}

补充说明

  • 如果你的Puppet版本较旧,也可以使用全局变量$::fqdn替代$facts['fqdn'],效果一致。
  • 确保目标服务器的fqdn事实值准确,可通过在服务器上执行facter fqdn命令验证。

内容的提问来源于stack exchange,提问作者sameer

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.18 19:45:32