Appcmd.exe是IIS7提供的一个管理站点的命令行工具,同时支持Ftp和Http的站点,功能还算强大,具体使用方法参考微软网站。

需求

我这里的例子主要配置一个Ftp站点,并且允许CcUser这个用户对其目录具备读和写的权限:

代码

@echo off
set cc_inbox_dir=c:\CC_Inbox
set cc_outbox_dir=c:\CC_Outbox
set appcmd_exe=%systemroot%\system32\inetsrv\appcmd.exe
set ftp_siet_name=CC_Inbox ::create cc inbox folder
::rd /S /Q %cc_inbox_dir%
IF NOT EXIST %cc_inbox_dir% (md %cc_inbox_dir%) ::create cc outbox folder
::rd /S /Q %cc_outbox_dir%
IF NOT EXIST %cc_outbox_dir% (md %cc_outbox_dir%) ::delete the ftp site and then make a new one. ID of the ftp site will be auto-generated.
%appcmd_exe% delete site %ftp_siet_name%
%appcmd_exe% add site /name:%ftp_siet_name% /bindings:ftp://*:21 /physicalpath:%cc_inbox_dir% ::add virtual dir for cc outbox. Note there is "/' at the end of the app.name
%appcmd_exe% add vdir /app.name:"%ftp_siet_name%/" /path:/outbox /physicalpath:%cc_outbox_dir% ::config ftp authentication
%appcmd_exe% set site %ftp_siet_name% -ftpServer.security.ssl.controlChannelPolicy:SslAllow -ftpServer.security.ssl.dataChannelPolicy:SslAllow -ftpServer.security.authentication.basicAuthentication.enabled:true ::config ftp authorization to allow CcUser to read and write
%appcmd_exe% set config %ftp_siet_name% -section:system.ftpServer/security/authorization /+"[accessType='Allow',users='CcUser',permissions='Read, Write']" /commit:apphost

要点

  • appcmd.exe默认没有添加到Path里,需要指定完整的路径。
  • 如果64机器上应该使用64位的版本,32位的版本在Wow64目录下
  • 如果需要IP Address设置成“All Unassigned”,在bindings的时候使用“*”,而不要使用ip地址或机器名
  • “/app.name”参数的值应该以“/”结尾,比如应该用“CC_Inbox/”而不是“CC_Inbox”
  • Authentication的设置在添加ftp站点的时候没法设置,但是可以通过修改ftp站点的属性来完成
  • Authorization(比如文件的访问权限)不在ftp站点的属性中,而是system级别的属性,修改完最后记得提交 “/commit:apphost”

参考资料

IIS7:通过脚本来配置ftp站点的更多相关文章

  1. 如何在Windows Server 2003中配置FTP站点服务

    前面写过一篇文章<怎样给你的网站注册一个好域名?> ,讲到“玉米”,笔者有很深的情节,也希望与大家交流“米事”,可以站内私信我或者直接回复文章. 有了好域名只是做网站的开始.我们还要买主机 ...

  2. Windows2008 IIS配置FTP站点

    视频教程:http://vodcdn.video.taobao.com/player/ugc/tb_ugc_pieces_core_player_loader.swf?version=1.0.2015 ...

  3. Windows10+IIS7.5上如何配置PHP站点

    最近我一直在写PHP,但是我很喜欢微软的开发环境和Windows的硬件环境,我就想在IIS上配置一下PHP站点,这样用起来也比较方便,在经过各位前辈的文章学习后,自己整理了一个比较简单的图片为主的教程 ...

  4. win7配置ftp服务

    1.首先开启ftp服务 2.配置ftp站点 3.让ftp服务器通过防火墙 4.编辑ftp访问权限,使用户能通过账号密码访问ftp,当然,在此之前,需要创建一个新的用户 到此,就可以远程访问ftp了

  5. Windows 2008 IIS7.5中创建独立账号的FTP站点图文教程

    Windows 2008上的IIS7.5,FTP功能已经非常强大了,完全不下于Serv-U这样的第三方软件.本文小编就介绍在IIS7.5上配置独立账号的FTP站点. 1.创建Windows账号 右击点 ...

  6. IIS7.5 在已有的WEB网站上配置FTP发布

    IIS7.5 有了很多新特性,例如FashCGI,Rewrite 模块的内置,简易的FTP发布等等,但是即使是微软,也没有详细的文档,本文详细的介绍了如何在现有的WEB网站上建立FTP发布. IIS ...

  7. FTP 站点及配置

    新建FTP站点根据导航步骤一步步来即可.  windows server 2008 中ftp的部署以及防火墙的配置 部署环境:Windows Server Enterprise 2008 R2 64b ...

  8. Windows Server 2008 R2 IIS7.5配置FTP图文教程

    本文为大家分享了IIS 配置FTP 网站的具体过程,供大家参考,具体内容如下 说明:服务器环境是Windows Server 2008 R2,IIS7.5. 1. 在 服务器管理器的Web服务器(II ...

  9. 阿里云服务器 FTP配置图文教程和添加两个FTP站点

    1.添加FTP账号和密码. A. 选择“服务管理器”->“配置”->“本地用户和组”->“用户”:在空白处右键选择“新用户”: B. 输入用户名,全名和描述可以不填写:输入两遍密码: ...

随机推荐

  1. luogu P1592 互质

    题目描述 输入两个正整数n和k,求与n互质的第k个正整数. 输入输出格式 输入格式: 仅一行,为两个正整数n(≤10^6)和k(≤10^8). 输出格式: 一个正整数,表示与n互质的第k个正整数. 输 ...

  2. hdu 3062 Party 2-SAT

    题目链接:HDU - 3062 有n对夫妻被邀请参加一个聚会,因为场地的问题,每对夫妻中只有1人可以列席.在2n 个人中,某些人之间有着很大的矛盾(当然夫妻之间是没有矛盾的),有矛盾的2个人是不会同时 ...

  3. shell中eval的使用问题

    转载:http://www.blogjava.net/jasmine214--love/archive/2010/11/26/339106.html 本文将会讲解一些linux中命令的使用与技巧希望对 ...

  4. iOS应用崩溃日志揭秘2

    这篇文章还可以在这里找到 英语 场景 4: 吃棒棒糖时闪退! 用户邮件说, “当rage master吃棒棒糖时应用就闪退…” 另一用户说, “我让rage master 吃棒棒糖,没几次应用就闪退了 ...

  5. xss---攻击

    xss表示Cross Site Scripting(跨站脚本攻击),它与SQL注入攻击类似,SQL注入攻击中以SQL语句作为用户输入,从而达到查询/修改/删除数据的目的,而在xss攻击中,通过插入恶意 ...

  6. hdu1708(C++)

    这个题目明确说了不涉及大数,假设第i个为b[i]: b[0]=s1; b[1]=s2; b[3]=s1+s2; b[4]=s1+2*s2; b[5]=2*s1+3*s2: b[6]=3*s1+5*s2 ...

  7. MFC中 用Static控件做超链接(可以实现变手形、下划线、字体变色等功能)

    1.新建一个基于对话框的工程MyLink,在对话框中拖一个Static控件,ID可改为IDC_SLink. 2.在头文件中添加成员变量: private: CRect m_Rect; CFont* m ...

  8. 黑苹果+win10双系统折腾笔记

    寒假趁机在家折腾一下黑苹果 笔记本配置:神船K610D I7 4600 ,其他配置思路一样,驱动要自己找 镜像和工具:OS X Yosemite 10.10.3 镜像 WIN10 TLSB 2016 ...

  9. 常见函数strlen、strcmp、strstr原型实现

    数组元素的结束符为'\0'.串的结束符为NULL 一.strlen #include <iostream> using namespace std; long h_strlen(const ...

  10. window.opener

    window.opener 实际上就是通过window.open打开的窗体的父窗体. 比如在父窗体parentForm里面 通过 window.open("subForm.html" ...