community.windows.win_iis_website 模块 – 配置 IIS 网站

注意

此模块是 community.windows 集合(版本 2.3.0)的一部分。

如果您正在使用 ansible 包,您可能已经安装了这个集合。它不包含在 ansible-core 中。要检查是否已安装,请运行 ansible-galaxy collection list

要安装它,请使用:ansible-galaxy collection install community.windows

要在 playbook 中使用它,请指定:community.windows.win_iis_website

概要

  • 创建、删除和配置 IIS 网站。

参数

参数

注释

application_pool

字符串

新站点执行的应用程序池。

hostname

字符串

要绑定到/用于新站点的主机头。

ip

字符串

要绑定到/用于新站点的 IP 地址。

name

字符串 / 必需

网站的名称。

parameters

字符串

来自字符串的自定义站点参数,其中属性由管道符分隔,属性名称/值由冒号分隔。例如:“foo:1|bar:2”

下面列出了一些您可以使用的自定义参数,这不是一个明确的列表,而是一些常见的参数。

logfile.directory - 存储日志的物理路径,例如 D:\IIS-LOGs\

logfile.period - 日志文件轮换计划,接受以下值,日志文件应多久轮换一次,例如 Hourly、Daily、Weekly、Monthly

logfile.LogFormat - 日志文件格式,默认情况下 IIS 使用 W3C

logfile.truncateSize - 将截断日志文件内容的大小,以字节为单位表示。

physical_path

字符串

远程主机上用于新站点的物理路径。

指定的文件夹必须已存在。

port

整数

要绑定到/用于新站点的端口。

site_id

字符串

显式设置站点的 IIS 数字 ID。

请注意,此值在网站创建后无法更改。

state

字符串

网站的状态

选项

  • "absent"

  • "started"

  • "stopped"

  • "restarted"

另请参阅

另请参阅

community.windows.win_iis_virtualdirectory

配置 IIS 中的虚拟目录。

community.windows.win_iis_webapplication

配置 IIS Web 应用程序。

community.windows.win_iis_webapppool

配置 IIS Web 应用程序池。

community.windows.win_iis_webbinding

配置 IIS 网站绑定。

示例

# Start a website

- name: Acme IIS site
  community.windows.win_iis_website:
    name: Acme
    state: started
    port: 80
    ip: 127.0.0.1
    hostname: acme.local
    application_pool: acme
    physical_path: C:\sites\acme
    parameters: logfile.directory:C:\sites\logs
  register: website

# Remove Default Web Site and the standard port 80 binding
- name: Remove Default Web Site
  community.windows.win_iis_website:
    name: "Default Web Site"
    state: absent

# Create a WebSite with custom Logging configuration (Logs Location, Format and Rolling Over).

- name: Creating WebSite with Custom Log location, Format 3WC and rolling over every hour.
  community.windows.win_iis_website:
    name: MyCustom_Web_Shop_Site
    state: started
    port: 80
    ip: '*'
    hostname: '*'
    physical_path: D:\wwwroot\websites\my-shop-site
    parameters: logfile.directory:D:\IIS-LOGS\websites\my-shop-site|logfile.period:Hourly|logFile.logFormat:W3C
    application_pool: my-shop-site

# Some commandline examples:

# This return information about an existing host
# $ ansible -i vagrant-inventory -m community.windows.win_iis_website -a "name='Default Web Site'" window
# host | success >> {
#     "changed": false,
#     "site": {
#         "ApplicationPool": "DefaultAppPool",
#         "Bindings": [
#             "*:80:"
#         ],
#         "ID": 1,
#         "Name": "Default Web Site",
#         "PhysicalPath": "%SystemDrive%\\inetpub\\wwwroot",
#         "State": "Stopped"
#     }
# }

# This stops an existing site.
# $ ansible -i hosts -m community.windows.win_iis_website -a "name='Default Web Site' state=stopped" host

# This creates a new site.
# $ ansible -i hosts -m community.windows.win_iis_website -a "name=acme physical_path=C:\\sites\\acme" host

# Change logfile.
# $ ansible -i hosts -m community.windows.win_iis_website -a "name=acme physical_path=C:\\sites\\acme" host

作者

  • Henrik Wallström (@henrikwallstrom)