如何在SEO友好网址中处理#(哈希)字符?

arv*_*sim 0 php url seo codeigniter

如果#(hash)要转到页面的特定部分,你如何绕过默认行为?我遇到的问题是#字符是SEO友好URL的一部分,它是一个标题而#(hash)是内容的一部分(即与C#一样).我无法检索整个字符串,我只在#之前得到字符.

例:

www.domain.com/C#-programming-book
Run Code Online (Sandbox Code Playgroud)

在这个例子中,我只得到'C'而不是'-programming-book'部分.我目前没有使用任何javascript,并且只想使用PHP解决方案.

在任何人建议我使用url编码之前,seo友好网址的标准是它应该是人类可读的并且容易记住.因此,将哈希值转换为'%23'并未通过标准.

周围没有办法吗?

Ton*_*ath 5

#是URL工作的定义方式的一部分,您无法更改.#在发出请求之前,浏览器将删除其后面的任何文本.一旦获得响应,它将在页面中搜索具有#名称的元素.

做大多数人做的事情并将其改为"尖锐"一词.即"csharp"