2016-11-25 42 views
-1

我试图在使用“清洁”或“漂亮”URL时尝试搜索处理动态网站上链接的最佳方式,但一直未能找到任何内容。如何使用清洁URL或漂亮URL来构建超链接

我发现了很多关于如何使用mod_rewrite和try_files的信息,我已经成功实现了,现在我的php前端控制器解析了URL上的所有参数,并且它正确地链接到页面。这里没问题。

我遇到的问题是如何最好地建立我的网页上的所有链接。目前我的链接都是格式,例如。 “www.site.com?do=post & id = 23”这工作正常。不过,我希望它们显示为“www.site.com/post/23”,由于try_files的原因,它也已正常工作,我的前端控制器如何解析URL中的所有参数。

但是我现在是否可以浏览我的所有代码并更改所有动态生成的链接以构建“www.site.com/post/23”格式?这看起来像很多工作,说实话,我想让它成为一个“选项”,使用干净或肮脏的URL,类似于Wordpress允许它作为管理面板中的选项。

像这样的网站保持链接的格式为“www.site.com?do=post & id = 23”,并在页面创建时对所有链接使用重写功能?所以当用户看到它时,链接显示为Clean?

我很困惑,因为处理这个问题的最佳方法,并希望我解释我在找什么。我只是想知道如何最好地处理动态链接,并有可选的显示为干净或脏的url格式,因为缺乏更好的单词。

感谢您的任何帮助。

回答

0

这是一个非常conceitual问题...

你可以看到Laravel框架路由器是如何工作的。 你不需要使用它,但你可以在那里获得想法。

router类负责知道如何创建一个URL到一些资源,页面,动作,无论你想要什么。

所以在你的视图中你只需调用一个返回url的方法即可。

+0

你是绝对正确的,这是一个非常概念性的问题。这就是为什么我一直在寻找几天,并决定最后只是问。我不想再回来,一旦我建立了更多的东西,就会改变一切。我宁愿将“最佳实践”概念推向现在,并继续以此为基础。所以希望从过去的经历中获得人们的想法。 –

+0

所以你建议的是建立一个单独的类,它为我提供的每个url返回一个格式化的url。然后,如果我决定关闭clean_urls作为选项,该类将只返回它所馈送的相同url,或者我只是使用条件来完全跳过类格式化? –