相关疑难解决方法(0)

Stack Overflow如何生成其SEO友好的URL?

什么是完整的正则表达式或其他一些可以获得标题的过程:

如何将标题更改为Stack Overflow等URL的一部分?

把它变成

how-do-you-change-a-title-to-be-part-of-the-url-like-stack-overflow
Run Code Online (Sandbox Code Playgroud)

Stack Overflow上的SEO友好URL中使用了哪些?

我使用的开发环境是Ruby on Rails,但是如果还有其他一些特定于平台的解决方案(.NET,PHP,Django),我也很乐意看到它们.

我相信我(或其他读者)会在不同的平台上遇到同样的问题.

我正在使用自定义路由,我主要想知道如何更改字符串以删除所有特殊字符,它全部小写,并且所有空格都被替换.

regex language-agnostic seo friendly-url slug

245
推荐指数
7
解决办法
4万
查看次数

如何在asp.net mvc中的url中添加页面标题?(网址生成)

如何动态创建网址/链接,例如:www.restaurant.com/restaurant/restaurant-name-without-some-characters-like-space-coma-etc/132

我可以用什么关键词来搜索关于这个主题的一些文章?(如何在asp.net mvc中生成和处理这种URL)

有一些问题:如何生成链接?(在db中存储slu ???)如果slug不是规范的话,是否重定向?

编辑:显然他们被称为slugs

url asp.net-mvc seo routing

16
推荐指数
2
解决办法
4401
查看次数

堆栈溢出问题路由

如果您查看SO问题URL,您将看到ID和"SLUG"被传递给Questions控制器:https://stackoverflow.com/questions/676934/what-do-you-need-to-write-your - 博客引擎.我感到有趣的是,您可以更改URL的"SLUG"部分,而不会影响应用程序路由请求示例的能力.我能想到的唯一方法就是有一条接受id和"SLUG"的路线,并在slug上使用路线约束来确保它遵循一个模式.我必须使用约束来确保两个变量不会导致此路由匹配所有请求.有没有人有更好的方法来实现这一点,或任何更高级的路由方案的例子?

加成:

我意识到SLUG是为了人类的可读性,我想在另一个应用程序中复制此功能.实现这一目标的最佳方法是什么?

路线:

routes.MapRoute(
    "Id + Slug",          // Route name
    "Test/{id}/{slug}",   // URL with parameters
    new                   // Parameter defaults
    {
        controller = "Test", 
        action = "Details", 
        id = "", 
        slug = "" 
    },  
    new { slug = new SlugConstraint() }
);
Run Code Online (Sandbox Code Playgroud)

简单约束:

public class SlugConstraint : IRouteConstraint
{
    public bool Match(HttpContextBase httpContext,
        Route route,
        string parameterName,
        RouteValueDictionary values,
        RouteDirection routeDirection)
    {
        string value = values[parameterName].ToString();

        return value.Contains("-");
    }
}
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc routes

3
推荐指数
1
解决办法
972
查看次数