Как записать идентификатор LetsEncrypt в виде файла в папку «.well-known/acme-challenge» в .net 8.0?C#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Как записать идентификатор LetsEncrypt в виде файла в папку «.well-known/acme-challenge» в .net 8.0?

Сообщение Anonymous »

Объяснение
У меня есть основной веб-сайт: https://example.com, созданный с помощью .Net 8.0 Razor Pages.
Я хотел бы создать (если она не существует) папку acme-challenge при запуске и
когда идентификатор отправляется на URL-адрес acme-challenge,< /p>
это создает файл с этим идентификатором в папке acme-challenge.
Следуя многочисленным руководствам на веб-сайтах, мне удалось завершить это до определенного момента.
Когда я передаю случайный идентификатор в вызов, я получаю сообщение об ошибке, как показано ниже (файл не существует).
Если файл существует, он просто читает его. нормально.
Не могу понять, чего для этого не хватает работать.
Примечание. У меня нет опыта работы с IIS или Lets Encrypt.
Если я что-то не понятно объясняю по незнанию.
Вопрос
Как это правильно сделать , чтобы это работало?
Код, который я пробовал:
В Программа.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
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Как записать идентификатор LetsEncrypt в виде файла в папку «.well-known/acme-challenge» в .net 8.0?
    Anonymous » » в форуме C#
    0 Ответы
    139 Просмотры
    Последнее сообщение Anonymous
  • Как записать идентификатор LetsEncrypt в виде файла в папку «.well-known/acme-challenge» в .net 8.0?
    Anonymous » » в форуме C#
    0 Ответы
    102 Просмотры
    Последнее сообщение Anonymous
  • Как записать идентификатор LetsEncrypt в виде файла в папку «.well-known/acme-challenge» в .net 8.0?
    Anonymous » » в форуме C#
    0 Ответы
    129 Просмотры
    Последнее сообщение Anonymous
  • Подозрительные папки в .well-known/acme-challenge после взлома [закрыто]
    Anonymous » » в форуме Apache
    0 Ответы
    178 Просмотры
    Последнее сообщение Anonymous
  • Добавьте .well-known в ядро ​​asp.net
    Anonymous » » в форуме C#
    0 Ответы
    36 Просмотры
    Последнее сообщение Anonymous

Вернуться в «C#»