- 
                Notifications
    You must be signed in to change notification settings 
- Fork 10.5k
READMEs for Servers #31207
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
          
     Merged
      
      
    
      
        
          +155
        
        
          −8
        
        
          
        
      
    
  
  
     Merged
                    READMEs for Servers #31207
Changes from all commits
      Commits
    
    
            Show all changes
          
          
            13 commits
          
        
        Select commit
          Hold shift + click to select a range
      
      129e008
              
                READMEs for Servers
              
              
                jkotalik 6f7a4eb
              
                Remove en-us
              
              
                jkotalik d07bfdf
              
                Update src/Servers/README.md
              
              
                jkotalik 3194944
              
                Update src/Servers/Kestrel/README.md
              
              
                jkotalik f38070a
              
                Update src/Servers/IIS/README.md
              
              
                jkotalik 40e02db
              
                Feedback
              
              
                jkotalik 11d9249
              
                Update src/Servers/HttpSys/README.md
              
              
                jkotalik 669b966
              
                Quick test
              
              
                jkotalik 6a75980
              
                HttpSys
              
              
                jkotalik cf55b1f
              
                Update README.md
              
              
                jkotalik 9849b29
              
                Feedback
              
              
                jkotalik b76f8c8
              
                Update src/Servers/IIS/README.md
              
              
                jkotalik 5d431b6
              
                Update src/Servers/Kestrel/README.md
              
              
                jkotalik File filter
Filter by extension
Conversations
          Failed to load comments.   
        
        
          
      Loading
        
  Jump to
        
          Jump to file
        
      
      
          Failed to load files.   
        
        
          
      Loading
        
  Diff view
Diff view
There are no files selected for viewing
  
    
      This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
      Learn more about bidirectional Unicode characters
    
  
  
    
              | Original file line number | Diff line number | Diff line change | 
|---|---|---|
| @@ -1,4 +1,42 @@ | ||
| HttpSysServer | ||
| ============= | ||
| # HttpSys | ||
|  | ||
| This repo contains a web server for ASP.NET Core based on the Windows [Http Server API](https://msdn.microsoft.com/en-us/library/windows/desktop/aa364510.aspx). | ||
| ASP.NET Core HttpSys Web Server is a web server that uses the [Windows Hypertext Transfer Protocol Stack](https://docs.microsoft.com/iis/get-started/introduction-to-iis/introduction-to-iis-architecture#hypertext-transfer-protocol-stack-httpsys). | ||
|  | ||
| Documentation for ASP.NET Core HttpSys can be found in the [ASP.NET Core HTTP.sys Docs](https://docs.microsoft.com/aspnet/core/fundamentals/servers/httpsys). | ||
|  | ||
| ## Description | ||
|  | ||
| This folder contains all relevant code for the HttpSys Web Server implementation. | ||
|  | ||
| - [src/](src/): Contains all production code for the HttpSys Web Server. | ||
| - [src/NativeInterop/](src/NativeInterop): Contains the native interop layer between managed and native code. | ||
| - [src/RequestProcessing/](src/RequestProcessing): Contains request and response processing code. | ||
| - [samples/](samples/): Contains samples showing how to use HTTP.sys. | ||
|  | ||
| ## Development Setup | ||
|  | ||
| ### Build | ||
|  | ||
| HTTP.sys can only be used on Windows. | ||
|  | ||
| To build this specific project from source, you can follow the instructions [on building a subset of the code](https://github.com/dotnet/aspnetcore/blob/main/docs/BuildFromSource.md#building-a-subset-of-the-code). | ||
|  | ||
| Or for the less detailed explanation, run the following command inside this directory. | ||
| ```powershell | ||
| > ./build.cmd | ||
| ``` | ||
|  | ||
| ### Test | ||
|  | ||
| To run the tests for this project, you can [run the tests on the command line](https://github.com/dotnet/aspnetcore/blob/main/docs/BuildFromSource.md#running-tests-on-command-line) in this directory. | ||
|  | ||
| Or for the less detailed explanation, run the following command inside this directory. | ||
| ```powershell | ||
| > ./build.cmd -t | ||
| ``` | ||
|  | ||
| You can also run project specific tests by running `dotnet test` in the `tests` directory next to the `src` directory of the project. | ||
|  | ||
| ## More Information | ||
|  | ||
| For more information, see the [ASP.NET Core README](../../../README.md). | 
  
    
      This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
      Learn more about bidirectional Unicode characters
    
  
  
    
              | Original file line number | Diff line number | Diff line change | 
|---|---|---|
| @@ -0,0 +1,55 @@ | ||
| # IIS | ||
|  | ||
| ASP.NET Core IIS Web Server is a flexible secure managed Web Server to be hosted with IIS on Windows. | ||
|  | ||
| Documentation for ASP.NET Core IIS can be found in the [ASP.NET Core IIS Docs](https://docs.microsoft.com/aspnet/core/host-and-deploy/iis). | ||
|  | ||
| ## Description | ||
|  | ||
| This folder contains all relevant code for the IIS Web Server implementation. | ||
|  | ||
| There are two modes for hosting application with IIS: in-process and out-of-process. In-process will run all managed code inside of the IIS worker process, while out-of-process will use IIS as a reverse-proxy to a dotnet process running Kestrel. | ||
|  | ||
| The following contains a description of the sub-directories. | ||
|  | ||
| - [AspNetCoreModuleV2/](AspNetCoreModuleV2/): Contains all native code that is part of the [ASP.NET Core Module/](https://docs.microsoft.com/aspnet/core/host-and-deploy/aspnet-core-module?view=aspnetcore-5.0). | ||
| - [AspNetCoreModuleV2/AspNetCore/](AspNetCoreModuleV2/AspNetCore/): Contains the ASP.NET Core Module shim, a minimal layer for IIS to interact with the in-process and out-of-process modules. | ||
| - [AspNetCoreModuleV2/CommonLib/](AspNetCoreModuleV2/CommonLib/): Contains common code shared between all native components. | ||
| - [AspNetCoreModuleV2/CommonLibTests/](AspNetCoreModuleV2/CommonLibTests/): Contains native tests for the ASP.NET Core Module. | ||
| - [AspNetCoreModuleV2/IISLib/](AspNetCoreModuleV2/IISLib/): Contains common code for interactions with IIS. | ||
| - [AspNetCoreModuleV2/InProcessRequestHandler/](AspNetCoreModuleV2/InProcessRequestHandler/): Contains native code for in-process hosting. | ||
| - [AspNetCoreModuleV2/OutOfProcessRequestHandler/](AspNetCoreModuleV2/OutOfProcessRequestHandler/): Contains native code for out-of-process hosting. | ||
| - [AspNetCoreModuleV2/RequestHandlerLib/](AspNetCoreModuleV2/RequestHandlerLib/): Contains shared code between in-process and out-of-process hosting. | ||
| - [IIS/](IIS/): Contains managed code for hosting ASP.NET Core with in-process hosting. | ||
| - [IISIntegration/](IISIntegration/): Contains managed code for hosting ASP.NET Core with out-of-process hosting. | ||
| - [IntegrationTesting.IIS/](IntegrationTesting.IIS/): Contains testing infrastructure for starting IIS and IISExpress. | ||
|  | ||
| ## Development Setup | ||
|  | ||
| ### Build | ||
|  | ||
| IIS can only be used on Windows. | ||
|  | ||
| IIS requires VS C++ native components to build. VS C++ native components can be installed by following the [Build From Source instructions](https://github.com/dotnet/aspnetcore/blob/main/docs/BuildFromSource.md#on-windows). | ||
|  | ||
| To build this specific project from source, you can follow the instructions [on building a subset of the code](https://github.com/dotnet/aspnetcore/blob/main/docs/BuildFromSource.md#building-a-subset-of-the-code). | ||
|  | ||
| Or for the less detailed explanation, run the following command inside this directory. | ||
| ```powershell | ||
| > ./build.cmd | ||
| ``` | ||
|  | ||
| ### Test | ||
|  | ||
| To run the tests for this project, you can [run the tests on the command line](https://github.com/dotnet/aspnetcore/blob/main/docs/BuildFromSource.md#running-tests-on-command-line) in this directory. | ||
|  | ||
| Or for the less detailed explanation, run the following command inside this directory. | ||
| ```powershell | ||
| > ./build.cmd -t | ||
| ``` | ||
|  | ||
| You can also run project specific tests by running `dotnet test` in the `tests` directory next to the `src` directory of the project. | ||
|  | ||
| ## More Information | ||
|  | ||
| For more information, see the [ASP.NET Core README](../../../README.md). | 
  
    
      This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
      Learn more about bidirectional Unicode characters
    
  
  
    
              | Original file line number | Diff line number | Diff line change | 
|---|---|---|
| @@ -1,8 +1,42 @@ | ||
| KestrelHttpServer | ||
| ================= | ||
| # Kestrel | ||
|  | ||
| Kestrel is a cross-platform web server for ASP.NET Core. | ||
| Kestrel is our cross-platform web server that is included and enabled by default in ASP.NET Core. | ||
|  | ||
| ## File logging for functional test | ||
| Documentation for ASP.NET Core Kestrel can be found in the [ASP.NET Core Kestrel Docs](https://docs.microsoft.com/aspnet/core/fundamentals/servers/kestrel). | ||
|  | ||
| Turn on file logging for Kestrel functional tests by specifying the environment variable ASPNETCORE_TEST_LOG_DIR to the log output directory. | ||
| ## Description | ||
|  | ||
| The following contains a description of the sub-directories. | ||
|         
                  jkotalik marked this conversation as resolved.
              Show resolved
            Hide resolved | ||
|  | ||
| - [Core/](Core/): Contains the main server implementation for Kestrel. | ||
| - [Kestrel/](Kestrel/): Contains the public API exposed to use Kestrel. | ||
| - [test/](test/): Contains End to End tests for Kestrel. | ||
| - [Transport.Sockets/](Transport.Sockets/):Contains the Sockets transport for connection management. | ||
| - [Transport.Quic/](Transport.Quic/): Contains the QUIC transport for connection management. | ||
| - [Transport.Libuv/](Transport.Libuv/): Contains the obsolete Libuv transport for connection management. | ||
|  | ||
| ## Development Setup | ||
|  | ||
| ### Build | ||
|  | ||
| To build this specific project from source, you can follow the instructions [on building a subset of the code](https://github.com/dotnet/aspnetcore/blob/main/docs/BuildFromSource.md#building-a-subset-of-the-code). | ||
|  | ||
| Or for the less detailed explanation, run the following command inside this directory. | ||
| ```powershell | ||
| > ./build.cmd | ||
| ``` | ||
|  | ||
| ### Test | ||
|  | ||
| To run the tests for this project, you can [run the tests on the command line](https://github.com/dotnet/aspnetcore/blob/main/docs/BuildFromSource.md#running-tests-on-command-line) in this directory. | ||
|  | ||
| Or for the less detailed explanation, run the following command inside this directory. | ||
| ```powershell | ||
| > ./build.cmd -t | ||
| ``` | ||
|  | ||
| You can also run project specific tests by running `dotnet test` in the `tests` directory next to the `src` directory of the project. | ||
|  | ||
| ## More Information | ||
|  | ||
| For more information, see the [ASP.NET Core README](../../../README.md). | ||
  
    
      This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
      Learn more about bidirectional Unicode characters
    
  
  
    
              | Original file line number | Diff line number | Diff line change | 
|---|---|---|
| @@ -0,0 +1,20 @@ | ||
| # ASP.NET Core Servers | ||
|  | ||
| ASP.NET Core Servers contains all servers that can be used in ASP.NET Core by default. These include: | ||
|  | ||
| - [Kestrel](https://docs.microsoft.com/aspnet/core/fundamentals/servers/kestrel), our cross-platform web server that is included and enabled by default in ASP.NET Core. | ||
| - [IIS Server/ASP.NET Core Module](https://docs.microsoft.com/aspnet/core/host-and-deploy/iis/), a flexible secure managed Web Server to be hosted with IIS on Windows. | ||
| - [HTTP.sys](https://docs.microsoft.com/aspnet/core/fundamentals/servers/httpsys), a web server that uses the [Windows Hypertext Transfer Protocol Stack](https://docs.microsoft.com/iis/get-started/introduction-to-iis/introduction-to-iis-architecture#hypertext-transfer-protocol-stack-httpsys). | ||
|  | ||
| ## Description | ||
|  | ||
| This folder contains all servers implementations related abstractions for ASP.NET Core. | ||
|  | ||
| - [Kestrel/](Kestrel/): Contains the implementation of the Kestrel Web Server. | ||
| - [IIS/](IIS/): Cotnains all code for the IIS Web Server and ASP.NET Core Module. | ||
| - [HttpSys/](HttpSys/): Contains all code for the HTTP.sys Web Server. | ||
| - [Connections.Abstractions/](Connections.Abstractions/): A set of abstractions for creating and using Connections; used in the server implementations and SignalR. | ||
|  | ||
| ## More Information | ||
|  | ||
| For more information, see the [ASP.NET Core README](../../README.md). | 
  Add this suggestion to a batch that can be applied as a single commit.
  This suggestion is invalid because no changes were made to the code.
  Suggestions cannot be applied while the pull request is closed.
  Suggestions cannot be applied while viewing a subset of changes.
  Only one suggestion per line can be applied in a batch.
  Add this suggestion to a batch that can be applied as a single commit.
  Applying suggestions on deleted lines is not supported.
  You must change the existing code in this line in order to create a valid suggestion.
  Outdated suggestions cannot be applied.
  This suggestion has been applied or marked resolved.
  Suggestions cannot be applied from pending reviews.
  Suggestions cannot be applied on multi-line comments.
  Suggestions cannot be applied while the pull request is queued to merge.
  Suggestion cannot be applied right now. Please check back later.
  
    
  
    
Uh oh!
There was an error while loading. Please reload this page.