是否可以在Laravel中使用大写字母和后来的小混合URL?

时间:2015-03-27 07:46:36

标签: php laravel laravel-4 laravel-5 laravel-routing

这是一个例子(它在Laravel 4中) 我想要这样的网址http://example.com/home/SiteLocation 并在routes.php我定义了Route::get('home/SiteLocation','HomeController@Functionname');

我的观点是,

  1. 是否可以像SiteLocation一样使用(小写和大写混合)作为网址?

  2. 如果是,如何在控制器中定义相同的功能?

2 个答案:

答案 0 :(得分:0)

  

是否可以像这个SiteLocation一样使用(小写和大写   case mix)as url?

是的 - 它应该正常工作,您不需要修改代码

  

如果是,如何在控制器中定义相同的功能?

您的控制器中的功能名称可以是您喜欢的任何内容 - 它不需要与网址对应。例如,这将起作用:

Route::get('home/SiteLocation','HomeController@siteLocation');

就像这样:

Route::get('home/SiteLocation','HomeController@SiteLocation');

和此:

Route::get('home/SiteLocation','HomeController@other');

答案 1 :(得分:0)

避免在网址中使用大写字母始终是一种好习惯。

原因如下:

1 - 如果您的网站位于Windows服务器上,则www.example.com/about的处理方式与www.example.com/About完全相同。
Windows服务器不区分大小写。如果您的网站托管在Linux上,那么这两个地址将被视为两个不同的页面(您也可以提供正则表达式 - 但这可能有点OTT。)。
2有两个网址导致同一页面对搜索排名没有好处。

请参阅define a case insensitive (part of a) route