我怎样才能让我网站的用户拥有一个带有 .net 核心的个人 URL?
How can I allow users of my site to have a personal URL with .net core?
如果我的站点位于 example.com 并且我有一个名为 Joe 的用户,我如何允许 Joe(或在该站点上注册的任何其他人)拥有 personal/custom URL 比如例子。com/Joe?我在 Azure 中使用自定义域托管的 Razor Pages .net core 3.1。
目录结构如下:
example.com/Users/Index?id=1 could rewrite to example.com/Joe
example.com/Profiles/Index?id=7 could rewrite to example.com/Joe/Profile
example.com/Photos/Index?id=5 could rewrite to example.com/Joe/Photos
等等
您可以在您的项目中使用urlrewrite。详情请见offical document.
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
else
{
app.UseExceptionHandler("/Home/Error");
}
// add rewrite
var rewrite = new RewriteOptions()
.AddRewrite(@"user/(.*)", "home/user?username=", skipRemainingRules: true);
app.UseRewriter(rewrite);
app.UseStaticFiles();
app.UseRouting();
app.UseAuthorization();
app.UseEndpoints(endpoints =>
{
endpoints.MapControllerRoute(
name: "default",
pattern: "{controller=Home}/{action=Index}/{id?}");
});
}
如果我的站点位于 example.com 并且我有一个名为 Joe 的用户,我如何允许 Joe(或在该站点上注册的任何其他人)拥有 personal/custom URL 比如例子。com/Joe?我在 Azure 中使用自定义域托管的 Razor Pages .net core 3.1。
目录结构如下:
example.com/Users/Index?id=1 could rewrite to example.com/Joe
example.com/Profiles/Index?id=7 could rewrite to example.com/Joe/Profile
example.com/Photos/Index?id=5 could rewrite to example.com/Joe/Photos
等等
您可以在您的项目中使用urlrewrite。详情请见offical document.
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
else
{
app.UseExceptionHandler("/Home/Error");
}
// add rewrite
var rewrite = new RewriteOptions()
.AddRewrite(@"user/(.*)", "home/user?username=", skipRemainingRules: true);
app.UseRewriter(rewrite);
app.UseStaticFiles();
app.UseRouting();
app.UseAuthorization();
app.UseEndpoints(endpoints =>
{
endpoints.MapControllerRoute(
name: "default",
pattern: "{controller=Home}/{action=Index}/{id?}");
});
}