【问题标题】:.Net Core - Resizing images using Imageflow.Net Core - 使用 Imageflow 调整图像大小
【发布时间】:2020-08-25 13:12:28
【问题描述】:

我正在尝试在我的 .net 核心应用程序中使用 Imageflow 的查询字符串 API 来调整图像大小。 我已经安装了 Imageflow.Server。 我的配置方法如下所示:

public void Configure(IApplicationBuilder App, IWebHostEnvironment Env)
    {
        if (AppSettings.IsDevelopment)
        {
            App.UseDeveloperExceptionPage();
        }
        else
        {
            App.UseExceptionHandler(Options =>
            {
                App.UseExceptionHandler("/error/404/");

            });
            App.UseHsts();
        }

        App.UseImageflow(new ImageflowMiddlewareOptions()
            .SetMapWebRoot(false)
            .MapPath("/upload/", "{upload folder path}"));

        App.UseFileServer();
        App.UseRouting();
        App.UseSession();

        App.UseEndpoints(Endpoints =>
        {
            Endpoints.MapControllers();
        });

    }

本地主机上没有问题,或者上传文件夹在 wwwroot 文件夹内,但如果上传文件夹在应用程序根目录之外,则图像不会调整大小。 有什么想法可以解决这个问题吗?

【问题讨论】:

  • 尝试从/upload/ 中的MapPath() 中删除尾随/
  • 当您尝试访问图像时收到的错误消息是什么?
  • 你能分享 /imageflow.debug 的内容吗?
  • @LilithRiver ogp.63bits.com/imageflow.debug。我希望它有所帮助。

标签: resize imageflow


【解决方案1】:

如果您已将该文件夹注册为虚拟目录,IIS 将阻止 ASP.NET Core 提供这些文件或调整这些文件的大小。

在 IIS 中取消映射虚拟目录并改用 ASP.NET Core。

要允许 ASP.NET Core 提供文件,请再次调用 UseStaticFiles 以映射该虚拟目录:https://docs.microsoft.com/en-us/aspnet/core/fundamentals/static-files?view=aspnetcore-3.1

您还需要在 ImageflowMiddlewareOptions 上为同一虚拟目录调用 MapPath。

【讨论】:

  • 当我只想从以前的虚拟目录中提供图像时,我只需要 ImageflowMiddlewareOptions 中的 MapPath() 调用,根本不需要在 Startup.cs 中添加第二个 UseStaticFiles() .它最终成为一个非常优雅的解决方案。
【解决方案2】:

这可能是权限问题。如果磁盘权限不允许运行应用的用户帐户访问该文件夹,则会失败。

【讨论】:

  • 应用程序正在访问该文件夹,并且所有图像都显示在网站上,但具有原始大小。也许它需要一些特殊权限?我已授予 IUSR、SYSTEM、NETWORK SERVICE、IIS_IUSRS、管理员和用户的权限。
  • 如果图像是从 /upload/ 提供的,那么命令没有理由不起作用。你能分享一些不起作用的示例 URL 吗?
  • 当然。 ogpgeorgia.gov.ge/en我正在尝试调整滑块图像和新闻图像的大小。
  • 上传文件夹在wwwroot里面吗?文件服务器可能正在接管请求。尝试交换中间件调用的顺序。
  • 您可以再次调用 UseStaticFiles 以在 ASP.NET Core 中映射该虚拟目录:docs.microsoft.com/en-us/aspnet/core/fundamentals/…
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-07-24
  • 2016-05-03
  • 1970-01-01
  • 2016-12-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多