>백엔드 개발 >PHP 튜토리얼 >laravel 5 配置了路由带"/",为什么URL::ROUTE('xxx')生成不了这个下划线

laravel 5 配置了路由带"/",为什么URL::ROUTE('xxx')生成不了这个下划线

WBOY
WBOY원래의
2016-06-06 20:16:351400검색

我这样配置路由的
laravel 5 配置了路由带

可是到了页面上

laravel 5 配置了路由带

我想要的链接形式是 http://m.xxx.com/gushi/后面带上“/”请问各位大神是不是缺少啥配置?

回复内容:

我这样配置路由的
laravel 5 配置了路由带

可是到了页面上

laravel 5 配置了路由带

我想要的链接形式是 http://m.xxx.com/gushi/后面带上“/”请问各位大神是不是缺少啥配置?

这个不单纯是框架或者路由设置的问题,在url中 / 是有特定意义,所以你不可能自行规定用/当做分隔符。
而且事实上对于web服务器来说/category/和/category就是同一个地址,你在画蛇添足。
而且,路由解析的时候第一件事情也是根据'/'来分割request url,所以你人为的在url中增加/并不会得到期望的结果。就像是文件命名不许使用/,因为会导致系统搞不清路径一样。

如果实在想要实现后面的正斜杠,在apache .htaccess 中将

<code>#RewriteCond %{REQUEST_FILENAME} !-d
#RewriteRule ^(.*)/$ /$1 [L,R=301]</code>

注释掉,然后路由这样写

<code>Route::get('/hero/',['uses'=>'Mobile\HerosController@category','as'=>'m_heroCategory']);</code>

可以得到 http://www.test.com/hero/这样的路由了。

参考链接 http://stackoverflow.com/questions/22063520/laravel-slash-after-url-redirects-to-root-folder

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.