Contents
Getting Started xxi
Release Notes xxi
Known Problems and Limitations xxii
Documentation Addenda xxvii
Getting Help and Providing Feedback xxviii
Installing IIS 5.0 xxix
Directories Remaining After Uninstall xxix
Related Topics xxix
Features xxx
Security xxx
Administration xxxi
Programmability xxxii
Internet Standards xxxii
What’s Changed xxxiii
Administration xxxiii
Programmatic Administration xxxiii
Active Server Pages (ASP) xxxiv
Registry xxxiv
Security xxxv
Performance xxxv
Documentation xxxvi
Quick Site Setup with IIS 5.0 xxxvi
Windows NT Option Pack Documentation xxxvii
NTOP Components Found in Windows 2000 Documentation xxxvii
NTOP Components Found Elsewhere xxxviii
Related Topics xxxviii
Part I Administration 1
Chapter 1 Web Site Management 3
About Web Site Management 4
Getting Started 4
Defining Home Directories 4
What is a Virtual Directory? 5
Reroute Requests with Redirects 6
Other Useful Tools 6
Choosing an Authoring Tool 7
Overview of Available Options 7
Multimedia Content and Other File Formats 8
Advanced Web Site Development 9
Using ASP to Manage Web Site Content 10
Discover Scripting 10
ASP: A Brief Overview 10
ASP Solutions 12
Changing the Home Directory 13
Creating Virtual Directories 13
Redirecting Requests to a Directory 14
Redirecting Requests to a Program 15
Enabling Content Expiration 15
Using Content Ratings 16
Adding a Footer to Web Pages 17
Server-Side Includes 17
About Server-Side Includes 17
Enabling Server-Side Includes 18
Using Server-Side Include Directives 19
Chapter 2 Server Administration 21
Web and FTP Sites 22
About Web and FTP Sites 22
Starting and Stopping Sites 27
Adding Sites 28
Setting FTP Messages and Directory Output Style 28
Naming Web Sites 29
Restarting IIS 30
Supporting Host Header Names in Older Browsers 32
Changing the Inherited Defaults 34
Backing Up and Restoring IIS 35
Assigning Web Site Operators 36
Remote Administration 37
Downlevel Site Administration 38
WebDAV Publishing 39
About WebDAV 39
Creating a Publishing Directory 41
Managing WebDAV Security 41
Searching a WebDAV Directory 44
Publishing and Managing Files 45
Name Resolution 47
About Name Resolution 48
Getting an Internet Name and Address 52
Verifying Your Computer Identity 53
Configuring Applications 53
Security 63
Authentication 73
Access Control 85
Encryption 99
Certificates 104
Auditing 120
Custom Error Messages 126
About Custom Error Messages 126
Adding a Custom Error Message 128
Enabling Detailed Custom Error Messages 130
Enabling ASP Error Processing 131
Logging Site Activity 131
About Logging Site Activity 132
Enabling Logging 138
Tracking Processor Use 139
Customizing W3C Extended Logging 140
Saving Log Files 140
Converting Log Files to NCSA Format 141
Performance Tuning 143
About Performance Tuning 144
Memory Management 148
Processor Utilization 151
Network Capacity 154
Replication and Clustering 164
About Clustering 164
Replication and Clustering in IIS 166
Upgrading IIS Cluster Resources 169
Part 2 Active Server Pages Guide 171
Chapter 3 Active Server Pages 173
Understanding Active Server Pages 173
Introduction to Active Server Pages 174
Important Changes in ASP 176
Building ASP Pages 178
Creating an ASP Page 178
Working with Scripting Languages 184
Using Variables and Constants 187
Interacting with Client-Side Scripts 193
Writing Procedures 194
Working with Collections 197
Processing User Input 202
Using Components and Objects 208
Setting Object Scope 213
Sending Content to the Browser 217
Including Files 224
Managing Sessions 227
Accessing a Data Source 235
Understanding Transactions 248
Debugging ASP Scripts 253
Built-in ASP Objects 257
Active Server Pages Objects Quick Reference Card 259
Chapter 4 Developing Web Applications 261
Web Applications: An Overview 261
Building on the Client/Server Architecture 262
The New System Design 263
Microsoft Windows Distributed interNet Application Architecture 264
Internet Information Services Architecture 265
Design Decisions 268
Defining Application Boundaries 269
Controlling Application Flow 271
Accommodating International Clients 279
Accessing Data with ASP 282
ADO Overview 282
Remote Data Binding with Remote Data Service 284
Processing Transactions 286
Designing Transactional Web Applications 286
Transaction Processing Technology 288
Security Ramifications for IIS Applications 289
Accessing Client Certificates with ASP 290
Passing Security Context 290
Additional Security Considerations 291
Development Technologies 292
Component Services 292
Dynamic HTML 293
Windows Script Components 293
XML 294
Active Directory Service Interfaces 294
Developing Scalable Web Applications 295
Performance 295
Scalability 295
Design Considerations for Performance and Scalability 296
Developing Scalable ASP Applications 297
Developing Scalable Components 300
Designing High-Performance ISAPI Applications 302
Data Access Performance 303
Performance and Scalability Testing 305
Chapter 5 Administering IIS Programmatically 307
Overview of Programmatic Administration 307
Introduction to the IIS Metabase 307
Development Choices for Programmatic Administration 312
Using IIS Admin Objects 313
IIS Admin Objects Overview 314
Administrative Tasks Using the IIS Admin Objects 316
Part 3 Administration Reference Material 319
Chapter 6 Administrator’s Reference 321
Server-Side Includes Reference 321
#config 321
#echo 324
#exec 327
#flastmod 328
#fsize 329
#include 330
Registry 331
About the Registry 332
Global Registry Entries 333
Service-Specific Registry Entries 336
WWW Service Registry Entries 338
FTP Service Registry Entries 341
Metabase 342
About the Metabase 343
Windows Events for IIS 344
About Windows Events 344
Web Services Events 345
FTP Services Events 351
Active Server Pages Events 352
Counters Reference 359
Counter Descriptions 363
Timeouts Reference 369
Timeout Settings Locations in IIS Snap-in 370
Logging Properties Reference 371
Redirect Reference 375
Redirect Variables 375
Redirect Wildcards 376
Part 4 Programmatic Administration Reference 377
Chapter 7 IIS Admin Objects Reference 379
IIsCertMapper 380
CreateMapping 381
DeleteMapping 382
GetMapping 383
SetAcct 384
SetEnabled 385
SetName 386
SetPwd 387
IIsCompressionScheme 388
IIsCompressionSchemes 389
IIsComputer 390
Backup 392
DeleteBackup 393
EnumBackups 394
Restore 395
IIsCustomLogModule 397
IIsFilter 398
IIsFilters 399
IIsFtpInfo 400
IIsFtpServer 401
Continue 403
Pause 404
Start 404
Status 405
Stop 405
IIsFtpService 406
IIsFtpVirtualDir 408
IIsIPSecurity 409
IPDeny 411
IPGrant 412
DomainDeny 413
DomainGrant 414
GrantByDefault 415
IIsLogModule 416
IIsLogModules 417
IIsMimeMap 419
IIsMimeType 421
MimeType 422
Extension 423
IIsWebDirectory 424
AppCreate 427
AppCreate2 428
AppDelete 429
AppDeleteRecursive 430
AppDisable 431
AppDisableRecursive 431
AppEnable 432
AppEnableRecursive 433
AppGetStatus 434
AppUnload 435
AppUnloadRecursive 435
AspAppRestart 436
IIsWebFile 437
IIsWebInfo 438
IIsWebServer 439
Continue 444
Pause 444
Start 445
Status 445
Stop 445
IIsWebService 446
IIsWebVirtualDir 450
Constants 454
Chapter 8 ADSI Reference 457
ADSI Object Properties 457
ADSI Object Methods 458
Get 460
GetDataPaths 461
GetEx 463
GetInfo 464
GetPropertyAttribObj 465
Put 466
PutEx 467
SetInfo 468
ADSI Container Object Properties 469
ADSI Container Object Methods 469
CopyHere 470
Create 471
Delete 472
GetObject 472
MoveHere 473
ADSI Changes for IIS 5.0 474
IIS Performance Features 475
ADSI Properties Removed from IIS 5.0 475
ADSI Properties Added to IIS 5.0 475
ADSI Property Key Type Changes for IIS 5.0 477
ADSI Properties Changed in IIS 5.0 477
Chapter 9 Administration Property Reference 479
Alphabetical Property List 479
AccessExecute 484
AccessFlags 485
AccessNoRemoteExecute 487
AccessNoRemoteRead 488
AccessNoRemoteScript 489
AccessNoRemoteWrite 490
AccessRead 491
AccessScript 492
AccessSource 493
AccessSSL 494
AccessSSL128 495
AccessSSLFlags 496
AccessSSLMapCert 497
AccessSSLNegotiateCert 498
AccessSSLRequireCert 499
AccessWrite 500
AdminACL 502
AdminServer 503
AllowAnonymous 504
AllowKeepAlive 505
AllowPathInfoForScriptMappings 505
AnonymousOnly 506
AnonymousPasswordSync 507
AnonymousUserName 508
AnonymousUserPass 509
AppAllowClientDebug 510
AppAllowDebugging 510
AppFriendlyName 511
AppIsolated 512
AppOopRecoverLimit 513
AppPackageID 514
AppPackageName 515
AppRoot 516
AppWamClsID 517
AspAllowOutOfProcComponents 518
AspAllowSessionState 518
AspBufferingOn 519
AspCodepage 520
AspEnableApplicationRestart 521
AspEnableAspHtmlFallback 522
AspEnableChunkedEncoding 522
AspEnableParentPaths 523
AspEnableTypelibCache 524
AspErrorsToNTLog 525
AspExceptionCatchEnable 527
AspLogErrorRequests 527
AspProcessorThreadMax 530
AspQueueConnectionTestTime 531
AspQueueTimeout 532
AspRequestQueueMax 533
AspScriptEngineCacheMax 533
AspScriptErrorMessage 534
AspScriptErrorSentToBrowser 535
AspScriptFileCacheSize 536
AspScriptLanguage 537
AspScriptTimeout 538
AspSessionMax 539
AspSessionTimeout 540
AspThreadGateEnabled 541
AspThreadGateLoadHigh 542
AspThreadGateLoadLow 543
AspThreadGateSleepDelay 544
AspThreadGateSleepMax 545
AspThreadGateTimeSlice 546
AspTrackThreadingModel 547
AuthAnonymous 549
AuthBasic 550
AuthFlags 551
AuthNTLM 552
AuthPersistence 553
AuthPersistSingleRequest 556
AuthPersistSingleRequestIfProxy 557
AuthPersistSingleRequestAlwaysIfProxy 558
CacheControlCustom 559
CacheControlMaxAge 560
CacheControlNoCache 561
CacheISAPI 562
CertCheckMode 562
CGITimeout 563
ConnectionTimeout 564
ContentIndexed 565
CpuAppEnabled 565
CpuCgiEnabled 566
CpuCgiLimit 568
CpuEnableActiveProcs 568
CpuEnableAllProcLogging 569
CpuEnableAppLogging 570
CpuEnableCgiLogging 571
CpuEnableEvent 572
CpuEnableKernelTime 573
CpuEnableLogging 573
CpuEnablePageFaults 574
CpuEnableProcType 575
CpuEnableTerminatedProcs 576
CpuEnableTotalProcs 577
CpuEnableUserTime 578
CpuLimitLogEvent 579
CpuLimitPause 580
CpuLimitPriority 581
CpuLimitProcStop 582
CpuLimitsEnabled 584
CpuLoggingInterval 585
CpuLoggingMask 586
CpuLoggingOptions 588
CpuResetInterval 590
CreateCGIWithNewConsole 591
CreateProcessAsUser 592
CustomErrorDescriptions 593
DefaultDoc 593
DefaultDocFooter 594
DefaultLogonDomain 595
DirBrowseFlags 596
DirBrowseShowDate 598
DirBrowseShowExtension 599
DirBrowseShowLongDate 600
DirBrowseShowSize 601
DirBrowseShowTime 602
DirectoryLevelsToScan 603
DisableSocketPooling 604
DontLog 605
DownlevelAdminInstance 606
EnableDefaultDoc 607
EnableDirBrowsing 608
EnableDocFooter 609
EnableReverseDns 610
ExitMessage 610
FilterDescription 611
FilterEnabled 612
FilterFlags 612
FilterLoadOrder 614
FilterPath 615
FilterState 615
FrontPageWeb 616
FtpDirBrowseShowLongDate 617
GreetingMessage 617
HcCacheControlHeader 618
HcCompressionBufferSize 619
HcCompressionDirectory 620
HcCompressionDll 621
HcCreateFlags 621
HcDoDiskSpaceLimiting 622
HcDoDynamicCompression 623
HcDoOnDemandCompression 624
HcDoStaticCompression 625
HcDynamicCompressionLevel 626
HcExpiresHeader 627
HcFileExtensions 628
HcFilesDeletedPerDiskFree 629
HcIoBufferSize 629
HcMaxDiskSpaceUsage 630
HcMaxQueueLength 631
HcMimeType 632
HcMinFileSizeForComp 632
HcNoCompressionForHttp10 633
HcNoCompressionForProxies 634
HcNoCompressionForRange 635
HcOnDemandCompLevel 635
HcPriority 636
HcSendCacheHeaders 637
HcScriptFileExtensions 638
HttpCustomHeaders 639
HttpErrors 640
HttpExpires 641
HttpPics 642
HttpRedirect 643
InProcessIsapiApps 644
IPSecurity 645
KeyType 646
LogAnonymous 646
LogCustomPropertyDataType 647
LogCustomPropertyHeader 648
LogCustomPropertyID 649
LogCustomPropertyMask 650
LogCustomPropertyName 651
LogCustomPropertyServicesString 652
LogExtFileBytesRecv 653
LogExtFileBytesSent 654
LogExtFileClientIp 655
LogExtFileComputerName 656
LogExtFileCookie 657
LogExtFileDate 658
LogExtFileFlags 659
LogExtFileHttpStatus 661
LogExtFileMethod 661
LogExtFileProtocolVersion 662
LogExtFileReferer 663
LogExtFileServerIp 664
LogExtFileServerPort 665
LogExtFileSiteName 666
LogExtFileTime 667
LogExtFileTimeTaken 668
LogExtFileUriQuery 669
LogExtFileUriStem 670
LogExtFileUserAgent 671
LogExtFileUserName 672
LogExtFileWin32Status 673
LogFileDirectory 674
LogFileLocaltimeRollover 675
LogFilePeriod 676
LogFileTruncateSize 677
LogModuleId 678
LogModuleList 679
LogModuleUiId 679
LogNonAnonymous 680
LogOdbcDataSource 681
LogOdbcPassword 681
LogOdbcTableName 682
LogOdbcUserName 683
LogonMethod 683
LogPluginClsid 684
LogType 685
MaxBandWidth 686
MaxBandWidthBlocked 687
MaxClientsMessage 687
MaxConnections 688
MaxEndpointConnections 689
MimeMap 690
MSDOSDirOutput 691
NetLogonWorkstation 691
NoCache 692
NotDeletable 693
NotifyAccessDenied 694
NotifyAuthentication 695
NotifyEndOfNetSession 696
NotifyEndOfRequest 697
NotifyLog 698
NotifyNonSecurePort 698
NotifyOrderHigh 699
NotifyOrderLow 700
NotifyOrderMedium 701
NotifyPreProcHeaders 702
NotifyReadRawData 703
NotifySecurePort 704
NotifySendRawData 705
NotifySendResponse 706
NotifyUrlMap 706
NTAuthenticationProviders 707
PasswordCacheTTL 708
PasswordChangeFlags 709
PasswordExpirePrenotifyDays 710
Path 711
PoolIDCTimeout 711
ProcessNTCRIfLoggedOn 712
PutReadSize 713
Realm 714
RedirectHeaders 714
ScriptMaps 715
SecureBindings 717
ServerAutoStart 718
ServerBindings 719
ServerComment 719
ServerConfigAutoPWSync 720
ServerConfigFlags 721
ServerConfigSSL128 722
ServerConfigSSL40 723
ServerConfigSSLAllowEncrypt 724
ServerListenBacklog 725
ServerListenTimeout 726
ServerSize 727
ServerState 728
SSIExecDisable 729
SSLUseDSMapper 730
UNCAuthenticationPassthrough 730
UNCPassword 731
UNCUserName 732
UploadReadAheadSize 733
UseHostName 733
WAMUserName 734
WAMUserPass 735
Win32Error 736
ADSI vs. Base Object Data Types 737
Part 5 ASP Guide Reference 739
Chapter 10 ASP Built-in Objects 741
Application Object 741
Application Collections 745
Application Methods 747
ASPError Object 750
ASPCode 752
Number 752
Source 752
Category 753
File 753
Line 753
Column 754
Description 754
ASPDescription 754
ObjectContext Object 754
ObjectContext Methods 757
ObjectContext Events 757
Request Object 759
Request Collections 760
Request Properties 775
Request Methods 775
Response Object 777
Response Collections 778
Response Properties 781
Response Methods 789
Server Object 795
Server Properties 796
Server Methods 797
Session Object 806
Session Collections 810
Session Properties 812
Session Methods 815
Chapter 11 Installable Components for ASP 819
Ad Rotator Component 820
Rotator Schedule File 821
Redirection File 823
Ad Rotator Properties 824
Ad Rotator Method 826
Browser Capabilities Component 827
Browscap.ini File 828
Retrieving Browser Capabilities from a Cookie 832
Content Linking Component 833
Content Linking List File 835
Content Linking Methods 836
Content Rotator Component 841
Content Schedule File 842
ChooseContent 843
GetAllContent 844
Counters Component 846
Get 847
Increment 848
Remove 849
Set 850
Database Access Component 850
File Access Component 851
Logging Utility 851
Logging Utility Methods 853
Logging Utility Properties 856
MyInfo Component 862
Page Counter Component 865
Hit Count Data file 867
Permission Checker Component 869
HasAccess 871
Status Component 872
Tools Component 874
FileExists 875
Owner 876
PluginExists 876
ProcessForm 877
Random 878
Chapter 12 Script Reference 879
JScript Reference 879
VBScript Reference 879
@ Directives Reference 879
@CODEPAGE 880
@ENABLESESSIONSTATE 880
@LANGUAGE 881
@LCID 881
@TRANSACTION 882
Global.asa Reference 883
Application Events 884
Session Events 886
<OBJECT> Declarations 889
TypeLibrary Declarations 890
Part 6 Appendices 893
Appendix A Frequently Asked Questions 895
Appendix B Web Resources 899
Glossary 901
Index 962