AppCmd, IIS7'de varsayılan web sitesinde sanal dizin oluşturmak için


11

IIS 7'de "Varsayılan Web Sitesi" altında bir sanal dizin oluşturmaya çalışıyorum AppCmd.

Ama önce birinin var olup olmadığını görmek istiyorum. Nasıl kullanabilirsiniz AppCmdaltında bir sanal dizin oluşturmak için "Varsayılan Web sitesi" ve nasıl bir if ifadesi yapabilirim?

Yanıtlar:


11

Bunu dene:

@ECHO OFF
REM --------------------------------------------------------------------------------
REM Check for and create VDir under Default Web Site
REM
REM %1 is the VDIR to create
REM %2 is the Physical path to the VDIR 
REM --------------------------------------------------------------------------------

IF "%1"=="" GOTO Syntax
IF "%2"=="" GOTO Syntax

ECHO Running...
ECHO   AppCmd.exe list vdir "Default Web Site/%1/"
ECHO.
AppCmd.exe list vdir "Default Web Site/%1/"
IF %errorlevel%==1 GOTO Exists

ECHO.
ECHO Running...
ECHO   AppCmd.exe ADD vdir /app.name:"Default Web Site/" /path:/%1 /physicalPath:%2
ECHO.
AppCmd.exe ADD vdir /app.name:"Default Web Site/" /path:/%1 /physicalPath:%2

GOTO End

:Exists
ECHO.
ECHO VDir already exists
ECHO.
GOTO End

:SYNTAX
ECHO.
ECHO VDir Name and Physical Path Required
ECHO.
ECHO CreateVDir.CMD ^<VDirName^> C:\PhysPath
ECHO.

:END

Güzel! Başlamak için ihtiyacım olan şey bu! Teşekkürler! Görünüşe göre ServerFault SO kadar iyi olabilir!
Riri

2
Bu varolmayan bir sanal dizin için 1 çıkış kodunu tetiklemiyor gibi görünüyor. IIS 7.5'i kullanma.
jpmc26

1

Bunu dene. Çoğunlukla Christopher_G_Lewis tarafından verilen cevapla aynıdır, ancak ikisini de alamadığım hata kodu yerine liste çıktısının ayrıştırılmasına dayanır.

Ayrıca cmd.exe kabuk yapısını kullanır A || B (A başarısız olursa B yapın)

@ECHO OFF
REM --------------------------------------------------------------------------------
REM Check for and create VDir under Default Web Site
REM
REM %1 is the VDIR to create
REM %2 is the Physical path to the VDIR 
REM --------------------------------------------------------------------------------

IF "%1"=="" GOTO Syntax
IF "%2"=="" GOTO Syntax

AppCmd.exe list vdir "Default Web Site/%1/" | findstr /I "Default Web Site/%1/" || AppCmd.exe add vdir /app.name:"Default Web Site/" /path:/%1 /physicalPath:%2

goto :eof
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.