如何路由到静态文件夹并在该文件夹中提供 html 内容?
How to route to a static folder and serve html contents within that folder ?
我是 laravel 的初学者,正在尝试通过路由提供 html 内容。内容是关于 api 文档的,所以我想通过路由提供它。文档包含在 /doc 中,具有以下目录结构。
/laravel_project
.
.
doc/
.
.
index.html
我想在以下路线上提供此内容:
Route::get('/apiDoc', function () {
return File::get(public_path() . '/doc/index.html');
});
我按上面的方法试过了,但没有用。请帮助我如何提供这些内容
谢谢。
您可以将静态文件夹保留在 views 文件夹下:
/laravel_project
- Resources
- Views
- Doc
- index.html
创建如下控制器方法:
public function index($slug = null)
{
if ($slug == null)
abort(404);
$viewTarget = 'doc.' . $slug;
if (view()->exists( $viewTarget )) {
return view( $viewTarget );
} else {
abort(404);
}
return view('home');
}
现在您可以为此方法创建路由:
Route::get('docs/{urlSlug}', 'YourController@index');
现在您可以像这样访问 url:project.url/docs/fileName
(您不需要添加文件扩展名)
我是 laravel 的初学者,正在尝试通过路由提供 html 内容。内容是关于 api 文档的,所以我想通过路由提供它。文档包含在 /doc 中,具有以下目录结构。
/laravel_project
.
.
doc/
.
.
index.html
我想在以下路线上提供此内容:
Route::get('/apiDoc', function () {
return File::get(public_path() . '/doc/index.html');
});
我按上面的方法试过了,但没有用。请帮助我如何提供这些内容
谢谢。
您可以将静态文件夹保留在 views 文件夹下:
/laravel_project
- Resources
- Views
- Doc
- index.html
创建如下控制器方法:
public function index($slug = null)
{
if ($slug == null)
abort(404);
$viewTarget = 'doc.' . $slug;
if (view()->exists( $viewTarget )) {
return view( $viewTarget );
} else {
abort(404);
}
return view('home');
}
现在您可以为此方法创建路由:
Route::get('docs/{urlSlug}', 'YourController@index');
现在您可以像这样访问 url:project.url/docs/fileName
(您不需要添加文件扩展名)