通过脚本将网站和 FTP 添加到 IIS 7 中

2024-01-14

我们正在将 100 多个域转移到新服务器。我创建了一个脚本,允许使用简单的 BAT 文件将网站条目和 FTP 条目添加到 IIS 7 中。我发现了几个使用 AppCmd ADD SITE 的教程,效果非常好。通过运行 :: c:\scripts\createIIS.bat youdomainname.com 。任何反馈? - 这是工作。

@Echo off
:: --------------------------------------------
:: Create IIS 7 Site Entry / FTP Site
:: --------------------------------------------

:: Get variable from command %1 Root Domain Name.
set rootDomainName = %1

:: This is the path to the Web Pages on the server.
set WebFile=C:\websites\

:: ADD NEW Directory
MKDIR %WebFile%%1

:: ADD IIS ENTRY
%windir%\system32\inetsrv\AppCmd ADD SITE /name:%1 /bindings:http/*:80:%1,http/*:80:www.%1 /physicalPath:C:\websites\%1

:: --------------------------------------------
:: CREATE FTP in IIS
:: --------------------------------------------
%windir%\system32\inetsrv\AppCmd add vdir /app.name:"Default FTP Site/" /path:/%1 /physicalPath:"%WebFile%%1"


echo New Directory Created:  %WebFile%%1
echo IIS Website Created:  %1  and  www.%1
echo FTP SITE Created:  %1
echo ...
echo ...
echo COMPLETED!
pause

很棒的剧本。尽管这不是一个真正的问题,但我对它进行了一些修改以进行批处理。

首先,我创建了一个批处理文件,该文件读取要添加的网站的文本文件,该文件引用稍作修改的批处理文件以仅创建网站(不需要 FTP):

@Echo off
:: ---------------------------------------------------------------------------------------
:: Create Batched IIS 7 Site Entries
:: 
::   Usage: CreateIISEntry.bat [websitename.com] (no www.)
:: 

for /f %%X in (NewWebsiteEntries.txt) do CreateSingleIISEntry.bat %%X


echo ...
echo *** BATCH PROCESS HAS BEEN COMPLETED ***

NewWebsiteEntries.txt 包含要创建的网站列表 - 每行一个(不包括 www):

site1.com
site2.com
site3.com

最后,创建条目的批处理文件:

@Echo off
:: ---------------------------------------------------------------------------------------
:: Create IIS 7 Site Entry
:: 
::   Usage: CreateSingleIISEntry.bat [websitename.com] (no www.)
:: ---------------------------------------------------------------------------------------

:: Get variable from command %1 Root Domain Name.
set rootDomainName = %1

:: This is the path to the Web Pages on the server.
set WebFile=C:\inetpub\wwwroot\

:: ADD NEW Directory
MKDIR %WebFile%%1
echo New Directory Created:  %WebFile%%1

xcopy C:\inetpub\wwwroot\NewWebsiteHolding\*.* %WebFile%%1

:: ADD IIS ENTRY
%windir%\system32\inetsrv\AppCmd ADD SITE /name:%1 /bindings:http/[YOUR IP ADDRESS OR *]:80:%1,http/[YOUR IP ADDRESS OR *]:80:www.%1 /physicalPath:%WebFile%%1
echo IIS Website Created:  %1  and  www.%1

#:: --------------------------------------------
#:: CREATE FTP in IIS
#:: --------------------------------------------
#%windir%\system32\inetsrv\AppCmd add vdir /app.name:"Default FTP Site/" /path:/%1 /physicalPath:"%WebFile%%1"
#
#


#echo FTP SITE Created:  %1
echo ...
echo ...
echo New website added ========================= %1

由于就我而言,并非所有新网站都会立即上线,因此我将默认占位符网站的内容复制到新创建的网站目录中。

这会将所有网站添加到默认应用程序池。

就是这样。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

通过脚本将网站和 FTP 添加到 IIS 7 中 的相关文章

  • 如何覆盖/更新当前由 IIS 提供服务的文件?

    问题 我的公司每月发布一份时事通讯 我将其托管在我们的内部网站上 我有一个供时事通讯作者上传最新版本的页面 作者上传最新的新闻通讯后 他会发送一封广播电子邮件来宣布新的新闻通讯 员工总是会检查新的时事通讯并向作者发送反馈以及需要进行的更正
  • 当地语言的布尔值

    这个问题很久以前就被问过服务器故障 https serverfault com questions 274964 iis 7 5 using classic asp converts a boolean value to a string
  • (此时出乎意料 - 批处理脚本

    我正在使用下面的批处理脚本并收到错误 这时候是出乎意料的 我知道问题出在第一行 但我不明白出了什么问题 有任何想法吗 script IF 1 LOOP1 SET P isDefault Value Missing do you want t
  • 如何自动执行/安排 IIS 中托管的 WCF 服务调用?

    我有一个非常简单的服务合同 用于管理自己的数据导入 类似于 using System ServiceModel namespace Company Services Domain Contract ServiceContract Name
  • 奇怪的 ASP.NET 错误!

    我正在运行带有 IIS 7 5 的 Windows 7 x64 版本 我有一个简单的 asp net 网站 我在其他版本的 Windows 和 IIS 上运行该网站 但现在在某些页面上出现以下错误 异常信息 异常类型 HttpParseEx
  • 任务中的 ConEmu 命令

    我试图在 ConEmu 中获取一个任务来打开多个控制台 并在每个控制台打开时运行一个类似批处理的脚本 例如 打开 Git Bash 将控制台命名为 X 将当前目录设置为 Y 打开另一个 Git Bash 并运行一组命令 例如 cd A B
  • 为什么从 ASP.NET 页面调用的 DLL 中出现异常后,我的 IIS7 应用程序池会关闭?

    我已阅读帖子ASP NET应用程序池关闭问题 https stackoverflow com questions 4742122 asp net application pool shutdown problem and IIS 7 5 应
  • 尝试从 C# 服务查询 IIS 时出现异常

    我从使用 C 编写的 Windows 服务调用以下代码 try ServerManager m new ServerManager if m null SiteCollection sites m Sites I get exception
  • 如何消除批处理文件动画中的闪烁? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 因此 我一直在批量制作一个假 GUI 以作为我正在做的 YouTube 评论的结尾 它基本上是一堆方框
  • 如何在后台运行python程序以保持活动窗口相同

    我编写了一个程序 可以将前景窗口更改为显示器尺寸的 85 并且要成功运行 前景窗口需要保持不变 我已将 python 脚本 pyw 放入批处理文件 运行 pythonw 并在桌面上创建了批处理文件的快捷方式 并提供了快速运行它的快捷方式 我
  • 如何使用批处理脚本调用的curl 获取http post 请求的响应代码?

    我正在努力为从我们的工具之一发送 http post 请求提供支持 该工具基本上通过 http 请求执行作业 实现此目的的方法是该工具使用多个参数调用 RunScript bat 该脚本解析这些参数并在验证后发出curl post 请求 P
  • 已安装全局 NPM 包但未找到命令

    我已经全局安装了两个 npm 包 下载 https www npmjs com package download and 谜虚拟盒 https www npmjs com package enigmavirtualbox通过命令行 npm
  • 如何在安装过程中运行“.bat”文件?

    在安装项目中 诸如 exe dll js vbs 之类的可执行文件是可以接受的 但无法运行 bat自定义操作中的文件 问题是如何运行 bat安装过程中的文件 好吧 经过大量搜索和反复试验 我解决了这个问题 我不确定这是否是最好的方法 但它确
  • 如何获取Windows批处理的父文件夹

    我正在编写一个批处理文件 我需要获取该bat文件的父文件夹 有可能吗 注意 我的意思是批处理文件的父文件夹 而不是调用该批处理的提示的当前目录 Thanks 批处理的父文件夹位于变量中 dp0位于 例子 echo off setlocal
  • 使用 Windows 批处理文件在文本文件中添加新行

    我有一个文本文件 其中有 200 多行 我只想在第 4 行之前添加一个新行 我使用的是 Windows XP 输入前的示例文本文件 header 1 header 2 header 3 details 1 details 2 输出后 hea
  • 如何批量获取子字符串在字符串中的位置

    获取子串的位置 Set str1 This is Test string Set sstr Test 这里我需要获取 Test 8 的位置 谢谢 echo OFF SETLOCAL Set str1 This is Test string
  • 围绕 readline 构建的 python 批处理的触发器选项卡完成

    背景 我有一个 python 程序 它导入并使用 readline 模块来构建自制的命令行界面 我有第二个 python 程序 围绕 Bottle 一个 Web 微框架构建 充当该 CLI 的前端 第二个 python 程序向第一个程序打开
  • Chrome 扩展 - 消息传递到批处理文件

    我使用了示例项目https developer chrome com extensions samples https developer chrome com extensions samples我能够运行 python 本机应用程序 有
  • Windows批处理脚本启动程序并退出控制台

    我有一个用于启动程序的批处理脚本 例如notepad exe 当我双击这个批处理文件时 记事本正常启动 但是黑窗cmd谁发起的notepad exe仍然在后台 我需要做什么才能启动notepad exe并使cmd窗口消失 edit 比使用更
  • MD 和 MKDIR 批处理命令有什么区别?

    这两个命令都会创建文件夹 我read http www computerhope com mdhlp htmMKDIR 甚至可以创建子文件夹 这只是区别吗 为什么有两个命令做同样的事情 我应该使用哪一个 除了 npocmaka 的answe

随机推荐