2011-10-04 2 views
6

새 서버로 100 개 이상의 도메인을 이동하는 중입니다. 간단한 BAT 파일을 사용하여 IIS 7에 웹 사이트 항목 및 FTP 항목을 추가 할 수있는 스크립트를 만들었습니다. AppCmd ​​ADD SITE를 사용하여 여러 자습서를 찾았습니다. 아주 잘 작동합니다. :: c : \ scripts \ createIIS.bat youdomainname.com을 실행하십시오. 아무 피드백? - 일하고있어.스크립트를 통해 IIS 7에 웹 사이트 및 FTP 추가

@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 

답변

5

위대한 스크립트. 비록 이것이 정말로 질문이 아니지만 배치 처리를 위해 다소 수정되었습니다.

먼저, 나는 단지 만들 웹 사이트에 약간 수정 된 배치 파일을 참조 추가 할 웹 사이트의 텍스트 파일을 읽습니다 배치 파일을 생성 (더 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 

내 경우에 모든 새 사이트가 한 번에 라이브가 아니기 때문에 내용이 새로 만들어진 웹 사이트 디렉토리에 복사되는 기본 자리 표시 자 사이트입니다.

이렇게하면 모든 사이트가 기본 응용 프로그램 풀에 추가됩니다.

그게 전부입니다.