laravel 5 配置了路由带"/",为什么URL::ROUTE('xxx')生成不了这个下划线
程序员文章站
2022-06-12 20:46:33
...
我这样配置路由的
可是到了页面上
我想要的链接形式是 http://m.xxx.com/gushi/后面带上“/”请问各位大神是不是缺少啥配置?
回复内容:
我这样配置路由的
可是到了页面上
我想要的链接形式是 http://m.xxx.com/gushi/后面带上“/”请问各位大神是不是缺少啥配置?
这个不单纯是框架或者路由设置的问题,在url中 / 是有特定意义,所以你不可能自行规定用/当做分隔符。
而且事实上对于web服务器来说/category/和/category就是同一个地址,你在画蛇添足。
而且,路由解析的时候第一件事情也是根据'/'来分割request url,所以你人为的在url中增加/并不会得到期望的结果。就像是文件命名不许使用/,因为会导致系统搞不清路径一样。
如果实在想要实现后面的正斜杠,在apache .htaccess 中将
#RewriteCond %{REQUEST_FILENAME} !-d
#RewriteRule ^(.*)/$ /$1 [L,R=301]
注释掉,然后路由这样写
Route::get('/hero/',['uses'=>'Mobile\HerosController@category','as'=>'m_heroCategory']);
可以得到 http://www.test.com/hero/这样的路由了。
参考链接 http://*.com/questions/22063520/laravel-slash-after-url-redirects-to-root-folder