Объяснение
У меня есть основной веб-сайт: https://example.com, созданный с помощью .Net 8.0 Razor Pages.
Я хотел бы создать (если она не существует) папку acme-challenge при запуске и
когда идентификатор отправляется на URL-адрес acme-challenge,< /p>
это создает файл с этим идентификатором в папке acme-challenge.
Следуя многочисленным руководствам на веб-сайтах, мне удалось завершить это до определенного момента.
Когда я передаю случайный идентификатор в вызов, я получаю сообщение об ошибке, как показано ниже (файл не существует).
Если файл существует, он просто читает его. нормально.
Не могу понять, чего для этого не хватает работает.
Вопрос
Как это сделать правильно, чтобы работало?
Код, который я пробовал:
В файле Program.cs:
app.UseStaticFiles();
app.UseStaticFiles(new StaticFileOptions
{
FileProvider = new PhysicalFileProvider(Path.Combine(Directory.GetCurrentDirectory(), @".well-known")),
RequestPath = new PathString("/.well-known"),
ServeUnknownFileTypes = true // serve extensionless file
});
// Дескриптор позволяет шифровать маршрут (перед обработкой MVC!)
app.UseRouter(r =>
{
r.MapGet(".well-known/acme-challenge/{id}", async (request, response, routeData) =>
{
var id = routeData.Values["id"] as string;
var file = Path.Combine(Directory.GetCurrentDirectory(), ".well-known", "acme-challenge", id);
await response.SendFileAsync(file);
});
});
app.UseRouting();
В WEBNET8.proj:
Пс. Не зная, какой из них подойдет, я перепробовал множество комбинаций. как показано ниже.
Always
PreserveNewest
Я получаю ошибку:
fail: Microsoft.AspNetCore.Server.Kestrel[13]
Connection id "0HN8GK882NCBE", Request id "0HN8GK882NCBE:00000021": An unhandled exception was thrown by the application.
System.IO.FileNotFoundException: Could not find file 'D:\source\repos\WEBNET8\WEBNET8\WEBNET8\.well-known\acme-challenge\ftf75rf7t7rfvovr8oiv8o'.
File name: 'D:\source\repos\WEBNET8\WEBNET8\WEBNET8\.well-known\acme-challenge\ftf75rf7t7rfvovr8oiv8o'
at System.IO.FileInfo.get_Length()
Подробнее здесь: https://stackoverflow.com/questions/792 ... hallenge-f
Как записать идентификатор LetsEncrypt в виде файла в папку «.well-known/acme-challenge» в .net 8.0? ⇐ C#
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Подозрительные папки в .well-known/acme-challenge после взлома [закрыто]
Anonymous » » в форуме Apache - 0 Ответы
- 178 Просмотры
-
Последнее сообщение Anonymous
-