Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iis 7 在IIS 7.0中重命名应用程序_Iis 7_Rename_Appcmd - Fatal编程技术网

Iis 7 在IIS 7.0中重命名应用程序

Iis 7 在IIS 7.0中重命名应用程序,iis-7,rename,appcmd,Iis 7,Rename,Appcmd,众所周知,在通过IIS管理器的窗口界面编辑应用程序设置时,不允许编辑应用程序别名。应用程序的别名为灰色(不允许更改)。但在本文中,您可能会发现如何通过命令行实用程序软件实现这一点: 但还有另一种方法。您可以编辑本文中所述的设置文件: 在设置文件中,我刚刚更改了应用程序元素的path属性的值(“/Site1”),仅此而已: <application path="/Site1" applicationPool="DefaultAppPool"> <virtualDire

众所周知,在通过IIS管理器的窗口界面编辑应用程序设置时,不允许编辑应用程序别名。应用程序的别名为灰色(不允许更改)。但在本文中,您可能会发现如何通过命令行实用程序软件实现这一点:

但还有另一种方法。您可以编辑本文中所述的设置文件:

在设置文件中,我刚刚更改了应用程序元素的path属性的值(“/Site1”),仅此而已:

<application path="/Site1" applicationPool="DefaultAppPool">
    <virtualDirectory
        path="/" 
        physicalPath="C:\Sites\Site1" />
</application>


问题是,我不知道这两种方法是否相同,是否有相同的结果。除了重命名应用程序名之外,命令行实用程序(appcmd)可能还做了一些额外的工作?

这里发生的所有事情,无论您使用哪种方法,都是更改了应用程序路径的名称

这真的没有什么魔力。显然,web应用程序中依赖于旧路径名的任何路径都需要重命名

您可能会发现我对这个问题的回答有助于理解IIS7中虚拟目录和应用程序的机制:


我最近不得不这样做,我认为您最好使用appcmd,因为正如您所说,我们不知道幕后可能会发生什么其他变化

例如

appcmd list app

APP "Default Web Site/" (applicationPool:DefaultAppPool)
APP "Default Web Site/develop" (applicationPool:mypool)
APP "Default Web Site/develop/xyz" (applicationPool:mypool)
在我的情况下,我必须从孩子开始重新命名。否则,appcmd将找不到子站点

appcmd set app "Default Web Site/develop/xyz" -path:/B455/xyz
appcmd set app "Default Web Site/develop" -path:/B455
之后


注意:appcmd可以在%windir%\system32\inetsrv下找到,我最近使用了
appcmd
来更改网站应用程序名称,没有任何问题。我以管理员身份运行cmd提示符,然后:-

cd c:\windows\syswow64\inetsrv\
appcmd set app WebsiteName/applicationname -path:"/newapplicationname"

非常有用:)

使用Powershell非常简单:

rename-item IIS:\Sites\yoursitename\yourappname\ newappname

如果缺少IIS:\命名空间,请确保服务器上安装了IIS管理脚本和工具。您可以从服务器管理器->Web服务器角色->角色服务->管理工具->IIS管理安装它,更新配置文件对我不起作用。运行appcmd成功了+1如果您提供的路径参数不可见,则应用程序可能无法再轻松访问以修复它。当我尝试此操作时,应用程序的身份验证设置没有跟随应用程序的新名称。小心使用。好东西。为我们工作。devblog.foliotek.com链接已更改。改为使用。和作为参考。以下是您查看已安装应用程序的方式:
%systemroot%\syswow64\inetsrv\appcmd list app
注意:如果需要,将syswow64替换为system32。可能还需要将模块导入Powershell会话:导入模块WebAdministration
rename-item IIS:\Sites\yoursitename\yourappname\ newappname