ASP.NET Core игнорирует путь, который я установил для обслуживания статических файловC#

Место общения программистов C#
Ответить
Anonymous
 ASP.NET Core игнорирует путь, который я установил для обслуживания статических файлов

Сообщение Anonymous »

У меня есть приложение ASP.net Core 9.0, где я хочу обслуживать некоторые статические файлы вместе с конечными точками API. Я пытаюсь настроить путь, в котором расположены статические файлы, но он, кажется, не работает.

Код: Выделить всё

// Only serve static files for requests that don't start with /api to avoid any conflicts
app.MapWhen(
context => !context.Request.Path.StartsWithSegments("/api"),
staticFilesApp =>
{
if (redirectHttpToHttps)
{
staticFilesApp.UseHttpsRedirection();
}

var fileProvider = new PhysicalFileProvider("/home/myuser/myapp/system/wwwroot");

staticFilesApp.UseStaticFiles(new StaticFileOptions { FileProvider = fileProvider });
Console.WriteLine($"File Provider root: {fileProvider.Root}, {Directory.Exists(fileProvider.Root)}");

staticFilesApp.UseRouting();
staticFilesApp.UseEndpoints(endpoints =>
{
endpoints.MapFallbackToFile("index.html");
});
}
);
Я получаю следующее предупреждение при запуске этого приложения:

wrn microsoft.aspnetcore.staticfiles.staticfilemiddle]. WebRootPath не был найден:/home/myuser/myApp/wwwroot. Статические файлы могут быть недоступны.

Показанный здесь путь отличается, по сути, это путь по умолчанию с wwwroot непосредственно в папке, где запускается приложение. Путь, который я установил вручную в коде, находится в папке System/wwwroot по сравнению с приложением, которая, по -видимому, полностью игнорируется. В команде журнала я проверил, что физическийфилепровидер имеет правильный путь, установленную как root, и что этот путь действительно существует. Если я скопирую папку wwwroot в местоположение по умолчанию AT/Home/myuser/myApp/wwwroot , статическое обслуживание файлов действительно работает.>

Подробнее здесь: https://stackoverflow.com/questions/797 ... atic-files
Ответить

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

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

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

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

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