我想要达成的目标

  • 映射我的普通域,例如如果可能,将 example.com设置为无区域。
  • 映射我的子域,例如blog.example.com到一个名为blog的区域。

  • 我发现了什么
    实际上,有很多与此主题相关的帖子,尤其是将子域映射到区域。
    从SO:
  • area-and-subdomain-routing
  • asp-net-core-mapping-subdomains-to-areas

  • 其他:
  • danylkoweb.com
  • benjii.me
  • web.archive.org

  • 而且可能还有更多。
    问题
    但是有一个大问题,在ASP.Net Core 3中,他们更改了很多内容,其中之一就是一般的路由,请参见mircosoft's devblog。基本上,他们更改了它,因此现在所有内容都应该是端点。
    所有类(class),例如MvcRouteHandler和接口(interface),例如至少从我的理解来看,IRouter现在基本上已经过时了。过了一会儿,在GitHub仓库中四处搜寻和挖掘之后,我找不到任何有用的东西。
    附加信息
  • 我正在使用SDK 3.0.100-preview6-012264,但尝试升级到SDK 3.0.100-preview7-012821尽快。
  • 我正在使用备用代理(nginx),该代理将请求传递到ASP.Net Core Server。
  • 最佳答案

    您说所有请求都通过nginx传递,但是关于nginx重定向却什么也没有说,您是否尝试使用nginx做到这一点,只需使用/etc/nginx/nginx.conf将子域重定向到域。

    server {
       server_name sub.domain.co;
       location / {
       return 301 $scheme://domain.co/BlogSite$request_uri;
      }
    }
    

    (BlogSite是您在ASP.Net Core Server上的区域路由。)

    关于c# - 将子域映射到ASP.Net Core 3中的区域,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/57172884/

    10-16 22:30