RobotsTxtCore 2.0.0-preview1
See the version list below for details.
dotnet add package RobotsTxtCore --version 2.0.0-preview1
NuGet\Install-Package RobotsTxtCore -Version 2.0.0-preview1
<PackageReference Include="RobotsTxtCore" Version="2.0.0-preview1" />
paket add RobotsTxtCore --version 2.0.0-preview1
#r "nuget: RobotsTxtCore, 2.0.0-preview1"
// Install RobotsTxtCore as a Cake Addin #addin nuget:?package=RobotsTxtCore&version=2.0.0-preview1&prerelease // Install RobotsTxtCore as a Cake Tool #tool nuget:?package=RobotsTxtCore&version=2.0.0-preview1&prerelease
RobotsTxtMiddleware
From version 2.0 I've dropped support for .NET Core versions prior to 3.1 and made a huge breaking change by adding a
IRobotsTxtProvider
interface seperate from the middleware to handle configuration.
A Robots.txt middleware for ASP.NET Core. Why is this needed you ask? Because if you need to add dynamic values (such as a configured url from your CMS) you'll need some sort of code to handle that, and this makes it easy.
Installation
NuGet
PM> Install-Package RobotsTxtCore
.Net CLI
> dotnet add package RobotsTxtCore
Usage
To specify multiple rules with the fluent interface makes it really easy.
public void ConfigureServices(IServiceCollection services) {
services.AddStaticRobotsTxt(builder =>
builder
.AddSection(section =>
section
.AddComment("Allow Googlebot")
.AddUserAgent("Googlebot")
.Allow("/")
)
.AddSection(section =>
section
.AddComment("Disallow the rest")
.AddUserAgent("*")
.AddCrawlDelay(TimeSpan.FromSeconds(10))
.Disallow("/")
)
.AddSitemap("https://example.com/sitemap.xml")
);
}
public void Configure(IApplicationBuilder app) {
app.UseRobotsTxt();
}
Output
# Allow Googlebot
User-agent: Googlebot
Allow: /
# Disallow the rest
User-agent: *
Disallow: /
Crawl-delay: 10
Sitemap: https://example.com/sitemap.xml
Or if you just want to deny everyone.
public void ConfigureServices(IServiceCollection services) {
services.AddStaticRobotsTxt(builder =>
builder
.DenyAll()
);
}
public void Configure(IApplicationBuilder app) {
app.UseRobotsTxt();
}
Output
User-agent: *
Disallow: /
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 is compatible. net5.0-windows was computed. net6.0 is compatible. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp3.1 is compatible. |
-
.NETCoreApp 3.1
- Microsoft.CodeAnalysis.CSharp (>= 3.11.0)
-
net5.0
- Microsoft.CodeAnalysis.CSharp (>= 3.11.0)
-
net6.0
- Microsoft.CodeAnalysis.CSharp (>= 3.11.0)
NuGet packages (2)
Showing the top 2 NuGet packages that depend on RobotsTxtCore:
Package | Downloads |
---|---|
Apprio.Enablement.Web.Api
Package Description |
|
Kros.CqrsTemplate
Package Description |
GitHub repositories (1)
Showing the top 1 popular GitHub repositories that depend on RobotsTxtCore:
Repository | Stars |
---|---|
Deali-Axy/StarBlog
☀☀功能完整的博客系统。后端基于.Net6+AspNetCore框架,遵循RESTFul接口规范,前端基于Vue+ElementUI开发,搭配全套开发笔记文章,可作为 .Net Core 入门项目学习~
|
Version | Downloads | Last updated |
---|---|---|
3.1.0-preview1 | 5,577 | 10/16/2023 |
3.0.0 | 114,694 | 10/1/2023 |
2.2.0 | 98,943 | 12/24/2022 |
2.1.1 | 43,490 | 6/24/2022 |
2.0.0 | 61,500 | 11/18/2021 |
2.0.0-preview3 | 379 | 9/11/2021 |
2.0.0-preview2 | 325 | 9/9/2021 |
2.0.0-preview1 | 290 | 9/9/2021 |
1.1.0 | 267,100 | 8/11/2019 |
1.0.1 | 6,628 | 2/27/2018 |
1.0.0 | 1,059 | 2/24/2018 |
1.0.0-beta-2 | 970 | 1/2/2018 |
1.0.0-beta-1 | 923 | 12/29/2017 |