/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/View
/FileViewFinder.php
/**
* Find the given view in the list of paths.
*
* @param string $name
* @param array $paths
* @return string
*
* @throws \InvalidArgumentException
*/
protected function findInPaths($name, $paths)
{
foreach ((array) $paths as $path) {
foreach ($this->getPossibleViewFiles($name) as $file) {
if ($this->files->exists($viewPath = $path.'/'.$file)) {
return $viewPath;
}
}
}
throw new InvalidArgumentException("View [$name] not found.");
}
/**
* Get an array of possible view files.
*
* @param string $name
* @return array
*/
protected function getPossibleViewFiles($name)
{
return array_map(function ($extension) use ($name) {
return str_replace('.', '/', $name).'.'.$extension;
}, $this->extensions);
}
/**
* Add a location to the finder.
*
* @param string $location
* @return void
Arguments
"View [homes.article.article_view] not found."
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/View
/FileViewFinder.php
}
}
/**
* Get the fully qualified location of the view.
*
* @param string $name
* @return string
*/
public function find($name)
{
if (isset($this->views[$name])) {
return $this->views[$name];
}
if ($this->hasHintInformation($name = trim($name))) {
return $this->views[$name] = $this->findNamespacedView($name);
}
return $this->views[$name] = $this->findInPaths($name, $this->paths);
}
/**
* Get the path to a template with a named path.
*
* @param string $name
* @return string
*/
protected function findNamespacedView($name)
{
list($namespace, $view) = $this->parseNamespaceSegments($name);
return $this->findInPaths($view, $this->hints[$namespace]);
}
/**
* Get the segments of a template with a named path.
*
* @param string $name
* @return array
Arguments
"homes.article.article_view"
array:1 [
0 => "/www/wwwroot/dun/resources/views"
]
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/View
/Factory.php
{
$data = array_merge($mergeData, $this->parseData($data));
return tap($this->viewInstance($path, $path, $data), function ($view) {
$this->callCreator($view);
});
}
/**
* Get the evaluated view contents for the given view.
*
* @param string $view
* @param array $data
* @param array $mergeData
* @return \Illuminate\Contracts\View\View
*/
public function make($view, $data = [], $mergeData = [])
{
$path = $this->finder->find(
$view = $this->normalizeName($view)
);
// Next, we will create the view instance and call the view creator for the view
// which can set any data, etc. Then we will return the view instance back to
// the caller for rendering or performing other view manipulations on this.
$data = array_merge($mergeData, $this->parseData($data));
return tap($this->viewInstance($view, $path, $data), function ($view) {
$this->callCreator($view);
});
}
/**
* Get the first view that actually exists from the given list.
*
* @param array $views
* @param array $data
* @param array $mergeData
* @return \Illuminate\Contracts\View\View
*/
Arguments
"homes.article.article_view"
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Foundation
/helpers.php
}
if (! function_exists('view')) {
/**
* Get the evaluated view contents for the given view.
*
* @param string $view
* @param array $data
* @param array $mergeData
* @return \Illuminate\View\View|\Illuminate\Contracts\View\Factory
*/
function view($view = null, $data = [], $mergeData = [])
{
$factory = app(ViewFactory::class);
if (func_num_args() === 0) {
return $factory;
}
return $factory->make($view, $data, $mergeData);
}
}
Arguments
"homes.article.article_view"
array:3 [
"categories" => array:4 [
0 => array:8 [
"id" => 3
"parent_id" => 0
"title" => "帮助中心"
"sort" => 0
"status" => 1
"created_at" => "2017-10-30 09:32:40"
"updated_at" => "2017-10-30 09:32:40"
"children" => array:9 [
0 => array:7 [
"id" => 5
"parent_id" => 3
"title" => "账户问题"
"sort" => 0
"status" => 1
"created_at" => "2017-10-30 09:35:40"
"updated_at" => "2017-10-30 09:35:40"
]
1 => array:7 [
"id" => 6
"parent_id" => 3
"title" => "选购指南"
"sort" => 0
"status" => 1
"created_at" => "2017-10-30 09:36:10"
"updated_at" => "2017-10-30 09:36:10"
]
2 => array:7 [
"id" => 7
"parent_id" => 3
"title" => "付款结算"
"sort" => 0
"status" => 1
"created_at" => "2017-10-30 09:36:27"
"updated_at" => "2017-10-30 09:36:27"
]
3 => array:7 [
"id" => 22
"parent_id" => 3
"title" => "最新消息"
"sort" => 0
"status" => 1
"created_at" => "2017-11-06 10:09:09"
"updated_at" => "2017-11-06 14:44:17"
]
4 => array:7 [
"id" => 23
"parent_id" => 3
"title" => "官方公告"
"sort" => 0
"status" => 1
"created_at" => "2017-11-06 10:09:35"
"updated_at" => "2017-11-06 14:44:24"
]
5 => array:7 [
"id" => 24
"parent_id" => 3
"title" => "新用户指南"
"sort" => 0
"status" => 1
"created_at" => "2019-07-17 17:03:11"
"updated_at" => "2019-07-17 17:03:11"
]
6 => array:7 [
"id" => 25
"parent_id" => 3
"title" => "服务器入门"
"sort" => 0
"status" => 1
"created_at" => "2019-07-17 17:03:32"
"updated_at" => "2019-07-17 17:03:32"
]
7 => array:7 [
"id" => 26
"parent_id" => 3
"title" => "进阶教程"
"sort" => 0
"status" => 1
"created_at" => "2019-07-17 17:03:41"
"updated_at" => "2019-07-17 17:03:41"
]
8 => array:7 [
"id" => 27
"parent_id" => 3
"title" => "常见问题"
"sort" => 0
"status" => 1
"created_at" => "2019-07-17 17:03:54"
"updated_at" => "2019-07-17 17:03:54"
]
]
]
1 => array:8 [
"id" => 4
"parent_id" => 0
"title" => "关于我们"
"sort" => 0
"status" => 1
"created_at" => "2017-10-30 09:32:52"
"updated_at" => "2017-10-30 14:17:04"
"children" => array:5 [
0 => array:7 [
"id" => 11
"parent_id" => 4
"title" => "新闻公告"
"sort" => 0
"status" => 1
"created_at" => "2017-10-30 09:47:28"
"updated_at" => "2017-10-30 09:47:28"
]
1 => array:7 [
"id" => 12
"parent_id" => 4
"title" => "业内资讯"
"sort" => 0
"status" => 1
"created_at" => "2017-10-30 09:47:57"
"updated_at" => "2017-10-30 09:47:57"
]
2 => array:7 [
"id" => 28
"parent_id" => 4
"title" => "服务器相关问题"
"sort" => 28
"status" => 1
"created_at" => "2020-01-02 11:47:12"
"updated_at" => "2020-01-02 11:47:12"
]
3 => array:7 [
"id" => 29
"parent_id" => 4
"title" => "安全相关问题"
"sort" => 29
"status" => 1
"created_at" => "2020-01-02 11:52:10"
"updated_at" => "2020-01-02 11:52:10"
]
4 => array:7 [
"id" => 30
"parent_id" => 4
"title" => "云主机相关问题"
"sort" => 30
"status" => 1
"created_at" => "2020-01-02 11:54:53"
"updated_at" => "2020-01-02 11:54:53"
]
]
]
2 => array:8 [
"id" => 15
"parent_id" => 0
"title" => "云服务器"
"sort" => 0
"status" => 1
"created_at" => "2017-10-30 11:44:29"
"updated_at" => "2017-10-30 11:44:29"
"children" => array:4 [
0 => array:7 [
"id" => 16
"parent_id" => 15
"title" => "控制台使用"
"sort" => 0
"status" => 1
"created_at" => "2017-10-30 11:46:44"
"updated_at" => "2017-10-30 11:53:15"
]
1 => array:7 [
"id" => 17
"parent_id" => 15
"title" => "基础类问题"
"sort" => 0
"status" => 1
"created_at" => "2017-10-30 11:47:15"
"updated_at" => "2017-10-30 11:47:15"
]
2 => array:7 [
"id" => 18
"parent_id" => 15
"title" => "网络类问题"
"sort" => 0
"status" => 1
"created_at" => "2017-10-30 11:47:46"
"updated_at" => "2017-10-30 11:47:46"
]
3 => array:7 [
"id" => 19
"parent_id" => 15
"title" => "安全类问题"
"sort" => 0
"status" => 1
"created_at" => "2017-10-30 11:48:22"
"updated_at" => "2017-10-30 11:48:22"
]
]
]
3 => array:8 [
"id" => 20
"parent_id" => 0
"title" => "常用工具"
"sort" => 0
"status" => 1
"created_at" => "2017-10-30 11:54:17"
"updated_at" => "2017-10-30 11:54:17"
"children" => array:1 [
0 => array:7 [
"id" => 21
"parent_id" => 20
"title" => "常用管理工具"
"sort" => 0
"status" => 1
"created_at" => "2017-10-30 11:54:55"
"updated_at" => "2017-10-30 11:54:55"
]
]
]
]
"article" => array:10 [
"id" => 262
"category_id" => 9
"title" => "183.134.58.255 绍兴高防服务器的奇妙之处!"
"abstract" => "183.134.58.255 绍兴高防服务器的奇妙之处!"
"keyword" => null
"sort" => 0
"content" => """
三、边沿核算的曙光\r\n
\r\n
\r\n
\r\n
速度是一个持续的云高防服务器等云核算设备的问题。通过云网络传输的数据需求大约100毫秒的时间才华抵达目的地,例如,如果您拉起最近地域的列表,则速度恰当快。一个新式的自动化设备、机器人、人工智能和虚拟现实需求超高速网络,可以供应近乎即时的效果。\r\n
\r\n
\r\n
\r\n
尽管如此,这不会发作在云端,至少,不是像我们今天所了解的那样运用云。终究,云网络并非随意发作,而是由一个巨大的远程数据中心供应支撑,这个数据中心可能距离您的办公室数百英里,而长距离传输的数据只能走得这么快。\r\n
\r\n
\r\n
\r\n
输入边沿核算,将数据处理转移到云的边沿,即靠近实践设备。通过边沿核算,设备本身实践上就像车轮上的小型数据中心。这种方法可能会将核算从当今海量数据中心的会合方式转移到安闲移动云的分布式结构。香港高防高防服务器\r\n
183.134.58.1 \r\n
183.134.58.2 \r\n
183.134.58.3 \r\n
183.134.58.4 \r\n
183.134.58.5 \r\n
183.134.58.6 \r\n
183.134.58.7 \r\n
183.134.58.8 \r\n
183.134.58.9 \r\n
183.134.58.10 \r\n
183.134.58.11 \r\n
183.134.58.12 \r\n
183.134.58.13 \r\n
183.134.58.14 \r\n
183.134.58.15 \r\n
183.134.58.16 \r\n
183.134.58.17 \r\n
183.134.58.18 \r\n
183.134.58.19 \r\n
183.134.58.20 \r\n
183.134.58.21 \r\n
183.134.58.22 \r\n
183.134.58.23 \r\n
183.134.58.24 \r\n
183.134.58.25 \r\n
183.134.58.26 \r\n
183.134.58.27 \r\n
183.134.58.28 \r\n
183.134.58.29 \r\n
183.134.58.30 \r\n
183.134.58.31 \r\n
183.134.58.32 \r\n
183.134.58.33 \r\n
183.134.58.34 \r\n
183.134.58.35 \r\n
183.134.58.36 \r\n
183.134.58.37 \r\n
183.134.58.38 \r\n
183.134.58.39 \r\n
183.134.58.40 \r\n
183.134.58.41 \r\n
183.134.58.42 \r\n
183.134.58.43 \r\n
183.134.58.44 \r\n
183.134.58.45 \r\n
183.134.58.46 \r\n
183.134.58.47 \r\n
183.134.58.48 \r\n
183.134.58.49 \r\n
183.134.58.50 \r\n
183.134.58.51 \r\n
183.134.58.52 \r\n
183.134.58.53 \r\n
183.134.58.54 \r\n
183.134.58.55 \r\n
183.134.58.56 \r\n
183.134.58.57 \r\n
183.134.58.58 \r\n
183.134.58.59 \r\n
183.134.58.60 \r\n
183.134.58.61 \r\n
183.134.58.62 \r\n
183.134.58.63 \r\n
183.134.58.64 \r\n
183.134.58.65 \r\n
183.134.58.66 \r\n
183.134.58.67 \r\n
183.134.58.68 \r\n
183.134.58.69 \r\n
183.134.58.70 \r\n
183.134.58.71 \r\n
183.134.58.72 \r\n
183.134.58.73 \r\n
183.134.58.74 \r\n
183.134.58.75 \r\n
183.134.58.76 \r\n
183.134.58.77 \r\n
183.134.58.78 \r\n
183.134.58.79 \r\n
183.134.58.80 \r\n
183.134.58.81 \r\n
183.134.58.82 \r\n
183.134.58.83 \r\n
183.134.58.84 \r\n
183.134.58.85 \r\n
183.134.58.86 \r\n
183.134.58.87 \r\n
183.134.58.88 \r\n
183.134.58.89 \r\n
183.134.58.90 \r\n
183.134.58.91 \r\n
183.134.58.92 \r\n
183.134.58.93 \r\n
183.134.58.94 \r\n
183.134.58.95 \r\n
183.134.58.96 \r\n
183.134.58.97 \r\n
183.134.58.98 \r\n
183.134.58.99 \r\n
183.134.58.100 \r\n
183.134.58.101 \r\n
183.134.58.102 \r\n
183.134.58.103 \r\n
183.134.58.104 \r\n
183.134.58.105 \r\n
183.134.58.106 \r\n
183.134.58.107 \r\n
183.134.58.108 \r\n
183.134.58.109 \r\n
183.134.58.110 \r\n
183.134.58.111 \r\n
183.134.58.112 \r\n
183.134.58.113 \r\n
183.134.58.114 \r\n
183.134.58.115 \r\n
183.134.58.116 \r\n
183.134.58.117 \r\n
183.134.58.118 \r\n
183.134.58.119 \r\n
183.134.58.120 \r\n
183.134.58.121 \r\n
183.134.58.122 \r\n
183.134.58.123 \r\n
183.134.58.124 \r\n
183.134.58.125 \r\n
183.134.58.126 \r\n
183.134.58.127 \r\n
183.134.58.128 \r\n
183.134.58.129 \r\n
183.134.58.130 \r\n
183.134.58.131 \r\n
183.134.58.132 \r\n
183.134.58.133 \r\n
183.134.58.134 \r\n
183.134.58.135 \r\n
183.134.58.136 \r\n
183.134.58.137 \r\n
183.134.58.138 \r\n
183.134.58.139 \r\n
183.134.58.140 \r\n
183.134.58.141 \r\n
183.134.58.142 \r\n
183.134.58.143 \r\n
183.134.58.144 \r\n
183.134.58.145 \r\n
183.134.58.146 \r\n
183.134.58.147 \r\n
183.134.58.148 \r\n
183.134.58.149 \r\n
183.134.58.150 \r\n
183.134.58.151 \r\n
183.134.58.152 \r\n
183.134.58.153 \r\n
183.134.58.154 \r\n
183.134.58.155 \r\n
183.134.58.156 \r\n
183.134.58.157 \r\n
183.134.58.158 \r\n
183.134.58.159 \r\n
183.134.58.160 \r\n
183.134.58.161 \r\n
183.134.58.162 \r\n
183.134.58.163 \r\n
183.134.58.164 \r\n
183.134.58.165 \r\n
183.134.58.166 \r\n
183.134.58.167 \r\n
183.134.58.168 \r\n
183.134.58.169 \r\n
183.134.58.170 \r\n
183.134.58.171 \r\n
183.134.58.172 \r\n
183.134.58.173 \r\n
183.134.58.174 \r\n
183.134.58.175 \r\n
183.134.58.176 \r\n
183.134.58.177 \r\n
183.134.58.178 \r\n
183.134.58.179 \r\n
183.134.58.180 \r\n
183.134.58.181 \r\n
183.134.58.182 \r\n
183.134.58.183 \r\n
183.134.58.184 \r\n
183.134.58.185 \r\n
183.134.58.186 \r\n
183.134.58.187 \r\n
183.134.58.188 \r\n
183.134.58.189 \r\n
183.134.58.190 \r\n
183.134.58.191 \r\n
183.134.58.192 \r\n
183.134.58.193 \r\n
183.134.58.194 \r\n
183.134.58.195 \r\n
183.134.58.196 \r\n
183.134.58.197 \r\n
183.134.58.198 \r\n
183.134.58.199 \r\n
183.134.58.200 \r\n
183.134.58.201 \r\n
183.134.58.202 \r\n
183.134.58.203 \r\n
183.134.58.204 \r\n
183.134.58.205 \r\n
183.134.58.206 \r\n
183.134.58.207 \r\n
183.134.58.208 \r\n
183.134.58.209 \r\n
183.134.58.210 \r\n
183.134.58.211 \r\n
183.134.58.212 \r\n
183.134.58.213 \r\n
183.134.58.214 \r\n
183.134.58.215 \r\n
183.134.58.216 \r\n
183.134.58.217 \r\n
183.134.58.218 \r\n
183.134.58.219 \r\n
183.134.58.220 \r\n
183.134.58.221 \r\n
183.134.58.222 \r\n
183.134.58.223 \r\n
183.134.58.224 \r\n
183.134.58.225 \r\n
183.134.58.226 \r\n
183.134.58.227 \r\n
183.134.58.228 \r\n
183.134.58.229 \r\n
183.134.58.230 \r\n
183.134.58.231 \r\n
183.134.58.232 \r\n
183.134.58.233 \r\n
183.134.58.234 \r\n
183.134.58.235 \r\n
183.134.58.236 \r\n
183.134.58.237 \r\n
183.134.58.238 \r\n
183.134.58.239 \r\n
183.134.58.240 \r\n
183.134.58.241 \r\n
183.134.58.242 \r\n
183.134.58.243 \r\n
183.134.58.244 \r\n
183.134.58.245 \r\n
183.134.58.246 \r\n
183.134.58.247 \r\n
183.134.58.248 \r\n
183.134.58.249 \r\n
183.134.58.250 \r\n
183.134.58.251 \r\n
183.134.58.252 \r\n
183.134.58.253 \r\n
183.134.58.254 \r\n
183.134.58.255
"""
"created_at" => "2018-05-29 16:07:37"
"updated_at" => "2018-05-29 16:07:37"
"pv" => 0
]
"id" => "262"
]
[]
/www
/wwwroot
/dun
/app
/Http
/Controllers
/Home
/HomeController.php
if (!$article) {
abort(404);
}
Article::where('id', $id)->increment('pv');
$pageData['article'] = $article;
return view('homes.solution.answer',$pageData);
}
public function article($id){
$categories = Article_category::where('status','=',1)->get()->toArray();
$categories = $this->get_attr($categories);
$id = $id ? $id : $categories[0]['children'][0]['id'];
$title = Article_category::where('id','=',$id)->value('title');
$article = Article::where('category_id','=',$id)->select('title','id','created_at','abstract')->orderBy('id','desc')->get()->toArray();
return view('homes.article.article',['categories'=>$categories,'article'=>$article,'id'=>$id,'title'=>$title]);
}
public function article_view($id){
$categories = Article_category::where('status','=',1)->get()->toArray();
$categories = $this->get_attr($categories);
$article = Article::where('id','=',$id)->first()->toArray();
return view('homes.article.article_view',['categories'=>$categories,'article'=>$article,'id'=>$id]);
}
private function get_attr($arr,$pid = 0){
$tree = array();
foreach($arr as $v){
if($v['parent_id'] == $pid){
$v['children'] = $this->get_attr($arr,$v['id']);
if($v['children'] == null){
unset($v['children']);
}
$tree[] = $v;
}
}
return $tree;
}
public function product_server_post(Request $request,$id){
$server = Product_server::find($id);
if(!$server) return redirect('/');
$server->remark = $request->get('remark');
$server->save();
Arguments
"homes.article.article_view"
array:3 [
"categories" => array:4 [
0 => array:8 [
"id" => 3
"parent_id" => 0
"title" => "帮助中心"
"sort" => 0
"status" => 1
"created_at" => "2017-10-30 09:32:40"
"updated_at" => "2017-10-30 09:32:40"
"children" => array:9 [
0 => array:7 [
"id" => 5
"parent_id" => 3
"title" => "账户问题"
"sort" => 0
"status" => 1
"created_at" => "2017-10-30 09:35:40"
"updated_at" => "2017-10-30 09:35:40"
]
1 => array:7 [
"id" => 6
"parent_id" => 3
"title" => "选购指南"
"sort" => 0
"status" => 1
"created_at" => "2017-10-30 09:36:10"
"updated_at" => "2017-10-30 09:36:10"
]
2 => array:7 [
"id" => 7
"parent_id" => 3
"title" => "付款结算"
"sort" => 0
"status" => 1
"created_at" => "2017-10-30 09:36:27"
"updated_at" => "2017-10-30 09:36:27"
]
3 => array:7 [
"id" => 22
"parent_id" => 3
"title" => "最新消息"
"sort" => 0
"status" => 1
"created_at" => "2017-11-06 10:09:09"
"updated_at" => "2017-11-06 14:44:17"
]
4 => array:7 [
"id" => 23
"parent_id" => 3
"title" => "官方公告"
"sort" => 0
"status" => 1
"created_at" => "2017-11-06 10:09:35"
"updated_at" => "2017-11-06 14:44:24"
]
5 => array:7 [
"id" => 24
"parent_id" => 3
"title" => "新用户指南"
"sort" => 0
"status" => 1
"created_at" => "2019-07-17 17:03:11"
"updated_at" => "2019-07-17 17:03:11"
]
6 => array:7 [
"id" => 25
"parent_id" => 3
"title" => "服务器入门"
"sort" => 0
"status" => 1
"created_at" => "2019-07-17 17:03:32"
"updated_at" => "2019-07-17 17:03:32"
]
7 => array:7 [
"id" => 26
"parent_id" => 3
"title" => "进阶教程"
"sort" => 0
"status" => 1
"created_at" => "2019-07-17 17:03:41"
"updated_at" => "2019-07-17 17:03:41"
]
8 => array:7 [
"id" => 27
"parent_id" => 3
"title" => "常见问题"
"sort" => 0
"status" => 1
"created_at" => "2019-07-17 17:03:54"
"updated_at" => "2019-07-17 17:03:54"
]
]
]
1 => array:8 [
"id" => 4
"parent_id" => 0
"title" => "关于我们"
"sort" => 0
"status" => 1
"created_at" => "2017-10-30 09:32:52"
"updated_at" => "2017-10-30 14:17:04"
"children" => array:5 [
0 => array:7 [
"id" => 11
"parent_id" => 4
"title" => "新闻公告"
"sort" => 0
"status" => 1
"created_at" => "2017-10-30 09:47:28"
"updated_at" => "2017-10-30 09:47:28"
]
1 => array:7 [
"id" => 12
"parent_id" => 4
"title" => "业内资讯"
"sort" => 0
"status" => 1
"created_at" => "2017-10-30 09:47:57"
"updated_at" => "2017-10-30 09:47:57"
]
2 => array:7 [
"id" => 28
"parent_id" => 4
"title" => "服务器相关问题"
"sort" => 28
"status" => 1
"created_at" => "2020-01-02 11:47:12"
"updated_at" => "2020-01-02 11:47:12"
]
3 => array:7 [
"id" => 29
"parent_id" => 4
"title" => "安全相关问题"
"sort" => 29
"status" => 1
"created_at" => "2020-01-02 11:52:10"
"updated_at" => "2020-01-02 11:52:10"
]
4 => array:7 [
"id" => 30
"parent_id" => 4
"title" => "云主机相关问题"
"sort" => 30
"status" => 1
"created_at" => "2020-01-02 11:54:53"
"updated_at" => "2020-01-02 11:54:53"
]
]
]
2 => array:8 [
"id" => 15
"parent_id" => 0
"title" => "云服务器"
"sort" => 0
"status" => 1
"created_at" => "2017-10-30 11:44:29"
"updated_at" => "2017-10-30 11:44:29"
"children" => array:4 [
0 => array:7 [
"id" => 16
"parent_id" => 15
"title" => "控制台使用"
"sort" => 0
"status" => 1
"created_at" => "2017-10-30 11:46:44"
"updated_at" => "2017-10-30 11:53:15"
]
1 => array:7 [
"id" => 17
"parent_id" => 15
"title" => "基础类问题"
"sort" => 0
"status" => 1
"created_at" => "2017-10-30 11:47:15"
"updated_at" => "2017-10-30 11:47:15"
]
2 => array:7 [
"id" => 18
"parent_id" => 15
"title" => "网络类问题"
"sort" => 0
"status" => 1
"created_at" => "2017-10-30 11:47:46"
"updated_at" => "2017-10-30 11:47:46"
]
3 => array:7 [
"id" => 19
"parent_id" => 15
"title" => "安全类问题"
"sort" => 0
"status" => 1
"created_at" => "2017-10-30 11:48:22"
"updated_at" => "2017-10-30 11:48:22"
]
]
]
3 => array:8 [
"id" => 20
"parent_id" => 0
"title" => "常用工具"
"sort" => 0
"status" => 1
"created_at" => "2017-10-30 11:54:17"
"updated_at" => "2017-10-30 11:54:17"
"children" => array:1 [
0 => array:7 [
"id" => 21
"parent_id" => 20
"title" => "常用管理工具"
"sort" => 0
"status" => 1
"created_at" => "2017-10-30 11:54:55"
"updated_at" => "2017-10-30 11:54:55"
]
]
]
]
"article" => array:10 [
"id" => 262
"category_id" => 9
"title" => "183.134.58.255 绍兴高防服务器的奇妙之处!"
"abstract" => "183.134.58.255 绍兴高防服务器的奇妙之处!"
"keyword" => null
"sort" => 0
"content" => """
三、边沿核算的曙光\r\n
\r\n
\r\n
\r\n
速度是一个持续的云高防服务器等云核算设备的问题。通过云网络传输的数据需求大约100毫秒的时间才华抵达目的地,例如,如果您拉起最近地域的列表,则速度恰当快。一个新式的自动化设备、机器人、人工智能和虚拟现实需求超高速网络,可以供应近乎即时的效果。\r\n
\r\n
\r\n
\r\n
尽管如此,这不会发作在云端,至少,不是像我们今天所了解的那样运用云。终究,云网络并非随意发作,而是由一个巨大的远程数据中心供应支撑,这个数据中心可能距离您的办公室数百英里,而长距离传输的数据只能走得这么快。\r\n
\r\n
\r\n
\r\n
输入边沿核算,将数据处理转移到云的边沿,即靠近实践设备。通过边沿核算,设备本身实践上就像车轮上的小型数据中心。这种方法可能会将核算从当今海量数据中心的会合方式转移到安闲移动云的分布式结构。香港高防高防服务器\r\n
183.134.58.1 \r\n
183.134.58.2 \r\n
183.134.58.3 \r\n
183.134.58.4 \r\n
183.134.58.5 \r\n
183.134.58.6 \r\n
183.134.58.7 \r\n
183.134.58.8 \r\n
183.134.58.9 \r\n
183.134.58.10 \r\n
183.134.58.11 \r\n
183.134.58.12 \r\n
183.134.58.13 \r\n
183.134.58.14 \r\n
183.134.58.15 \r\n
183.134.58.16 \r\n
183.134.58.17 \r\n
183.134.58.18 \r\n
183.134.58.19 \r\n
183.134.58.20 \r\n
183.134.58.21 \r\n
183.134.58.22 \r\n
183.134.58.23 \r\n
183.134.58.24 \r\n
183.134.58.25 \r\n
183.134.58.26 \r\n
183.134.58.27 \r\n
183.134.58.28 \r\n
183.134.58.29 \r\n
183.134.58.30 \r\n
183.134.58.31 \r\n
183.134.58.32 \r\n
183.134.58.33 \r\n
183.134.58.34 \r\n
183.134.58.35 \r\n
183.134.58.36 \r\n
183.134.58.37 \r\n
183.134.58.38 \r\n
183.134.58.39 \r\n
183.134.58.40 \r\n
183.134.58.41 \r\n
183.134.58.42 \r\n
183.134.58.43 \r\n
183.134.58.44 \r\n
183.134.58.45 \r\n
183.134.58.46 \r\n
183.134.58.47 \r\n
183.134.58.48 \r\n
183.134.58.49 \r\n
183.134.58.50 \r\n
183.134.58.51 \r\n
183.134.58.52 \r\n
183.134.58.53 \r\n
183.134.58.54 \r\n
183.134.58.55 \r\n
183.134.58.56 \r\n
183.134.58.57 \r\n
183.134.58.58 \r\n
183.134.58.59 \r\n
183.134.58.60 \r\n
183.134.58.61 \r\n
183.134.58.62 \r\n
183.134.58.63 \r\n
183.134.58.64 \r\n
183.134.58.65 \r\n
183.134.58.66 \r\n
183.134.58.67 \r\n
183.134.58.68 \r\n
183.134.58.69 \r\n
183.134.58.70 \r\n
183.134.58.71 \r\n
183.134.58.72 \r\n
183.134.58.73 \r\n
183.134.58.74 \r\n
183.134.58.75 \r\n
183.134.58.76 \r\n
183.134.58.77 \r\n
183.134.58.78 \r\n
183.134.58.79 \r\n
183.134.58.80 \r\n
183.134.58.81 \r\n
183.134.58.82 \r\n
183.134.58.83 \r\n
183.134.58.84 \r\n
183.134.58.85 \r\n
183.134.58.86 \r\n
183.134.58.87 \r\n
183.134.58.88 \r\n
183.134.58.89 \r\n
183.134.58.90 \r\n
183.134.58.91 \r\n
183.134.58.92 \r\n
183.134.58.93 \r\n
183.134.58.94 \r\n
183.134.58.95 \r\n
183.134.58.96 \r\n
183.134.58.97 \r\n
183.134.58.98 \r\n
183.134.58.99 \r\n
183.134.58.100 \r\n
183.134.58.101 \r\n
183.134.58.102 \r\n
183.134.58.103 \r\n
183.134.58.104 \r\n
183.134.58.105 \r\n
183.134.58.106 \r\n
183.134.58.107 \r\n
183.134.58.108 \r\n
183.134.58.109 \r\n
183.134.58.110 \r\n
183.134.58.111 \r\n
183.134.58.112 \r\n
183.134.58.113 \r\n
183.134.58.114 \r\n
183.134.58.115 \r\n
183.134.58.116 \r\n
183.134.58.117 \r\n
183.134.58.118 \r\n
183.134.58.119 \r\n
183.134.58.120 \r\n
183.134.58.121 \r\n
183.134.58.122 \r\n
183.134.58.123 \r\n
183.134.58.124 \r\n
183.134.58.125 \r\n
183.134.58.126 \r\n
183.134.58.127 \r\n
183.134.58.128 \r\n
183.134.58.129 \r\n
183.134.58.130 \r\n
183.134.58.131 \r\n
183.134.58.132 \r\n
183.134.58.133 \r\n
183.134.58.134 \r\n
183.134.58.135 \r\n
183.134.58.136 \r\n
183.134.58.137 \r\n
183.134.58.138 \r\n
183.134.58.139 \r\n
183.134.58.140 \r\n
183.134.58.141 \r\n
183.134.58.142 \r\n
183.134.58.143 \r\n
183.134.58.144 \r\n
183.134.58.145 \r\n
183.134.58.146 \r\n
183.134.58.147 \r\n
183.134.58.148 \r\n
183.134.58.149 \r\n
183.134.58.150 \r\n
183.134.58.151 \r\n
183.134.58.152 \r\n
183.134.58.153 \r\n
183.134.58.154 \r\n
183.134.58.155 \r\n
183.134.58.156 \r\n
183.134.58.157 \r\n
183.134.58.158 \r\n
183.134.58.159 \r\n
183.134.58.160 \r\n
183.134.58.161 \r\n
183.134.58.162 \r\n
183.134.58.163 \r\n
183.134.58.164 \r\n
183.134.58.165 \r\n
183.134.58.166 \r\n
183.134.58.167 \r\n
183.134.58.168 \r\n
183.134.58.169 \r\n
183.134.58.170 \r\n
183.134.58.171 \r\n
183.134.58.172 \r\n
183.134.58.173 \r\n
183.134.58.174 \r\n
183.134.58.175 \r\n
183.134.58.176 \r\n
183.134.58.177 \r\n
183.134.58.178 \r\n
183.134.58.179 \r\n
183.134.58.180 \r\n
183.134.58.181 \r\n
183.134.58.182 \r\n
183.134.58.183 \r\n
183.134.58.184 \r\n
183.134.58.185 \r\n
183.134.58.186 \r\n
183.134.58.187 \r\n
183.134.58.188 \r\n
183.134.58.189 \r\n
183.134.58.190 \r\n
183.134.58.191 \r\n
183.134.58.192 \r\n
183.134.58.193 \r\n
183.134.58.194 \r\n
183.134.58.195 \r\n
183.134.58.196 \r\n
183.134.58.197 \r\n
183.134.58.198 \r\n
183.134.58.199 \r\n
183.134.58.200 \r\n
183.134.58.201 \r\n
183.134.58.202 \r\n
183.134.58.203 \r\n
183.134.58.204 \r\n
183.134.58.205 \r\n
183.134.58.206 \r\n
183.134.58.207 \r\n
183.134.58.208 \r\n
183.134.58.209 \r\n
183.134.58.210 \r\n
183.134.58.211 \r\n
183.134.58.212 \r\n
183.134.58.213 \r\n
183.134.58.214 \r\n
183.134.58.215 \r\n
183.134.58.216 \r\n
183.134.58.217 \r\n
183.134.58.218 \r\n
183.134.58.219 \r\n
183.134.58.220 \r\n
183.134.58.221 \r\n
183.134.58.222 \r\n
183.134.58.223 \r\n
183.134.58.224 \r\n
183.134.58.225 \r\n
183.134.58.226 \r\n
183.134.58.227 \r\n
183.134.58.228 \r\n
183.134.58.229 \r\n
183.134.58.230 \r\n
183.134.58.231 \r\n
183.134.58.232 \r\n
183.134.58.233 \r\n
183.134.58.234 \r\n
183.134.58.235 \r\n
183.134.58.236 \r\n
183.134.58.237 \r\n
183.134.58.238 \r\n
183.134.58.239 \r\n
183.134.58.240 \r\n
183.134.58.241 \r\n
183.134.58.242 \r\n
183.134.58.243 \r\n
183.134.58.244 \r\n
183.134.58.245 \r\n
183.134.58.246 \r\n
183.134.58.247 \r\n
183.134.58.248 \r\n
183.134.58.249 \r\n
183.134.58.250 \r\n
183.134.58.251 \r\n
183.134.58.252 \r\n
183.134.58.253 \r\n
183.134.58.254 \r\n
183.134.58.255
"""
"created_at" => "2018-05-29 16:07:37"
"updated_at" => "2018-05-29 16:07:37"
"pv" => 0
]
"id" => "262"
]
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Routing
/Controller.php
/**
* Get the middleware assigned to the controller.
*
* @return array
*/
public function getMiddleware()
{
return $this->middleware;
}
/**
* Execute an action on the controller.
*
* @param string $method
* @param array $parameters
* @return \Symfony\Component\HttpFoundation\Response
*/
public function callAction($method, $parameters)
{
return call_user_func_array([$this, $method], $parameters);
}
/**
* Handle calls to missing methods on the controller.
*
* @param string $method
* @param array $parameters
* @return mixed
*
* @throws \BadMethodCallException
*/
public function __call($method, $parameters)
{
throw new BadMethodCallException("Method [{$method}] does not exist on [".get_class($this).'].');
}
}
Arguments
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Routing
/Controller.php
/**
* Get the middleware assigned to the controller.
*
* @return array
*/
public function getMiddleware()
{
return $this->middleware;
}
/**
* Execute an action on the controller.
*
* @param string $method
* @param array $parameters
* @return \Symfony\Component\HttpFoundation\Response
*/
public function callAction($method, $parameters)
{
return call_user_func_array([$this, $method], $parameters);
}
/**
* Handle calls to missing methods on the controller.
*
* @param string $method
* @param array $parameters
* @return mixed
*
* @throws \BadMethodCallException
*/
public function __call($method, $parameters)
{
throw new BadMethodCallException("Method [{$method}] does not exist on [".get_class($this).'].');
}
}
Arguments
array:2 [
0 => HomeController {#1047}
1 => "article_view"
]
array:1 [
"id" => "262"
]
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Routing
/ControllerDispatcher.php
{
$this->container = $container;
}
/**
* Dispatch a request to a given controller and method.
*
* @param \Illuminate\Routing\Route $route
* @param mixed $controller
* @param string $method
* @return mixed
*/
public function dispatch(Route $route, $controller, $method)
{
$parameters = $this->resolveClassMethodDependencies(
$route->parametersWithoutNulls(), $controller, $method
);
if (method_exists($controller, 'callAction')) {
return $controller->callAction($method, $parameters);
}
return $controller->{$method}(...array_values($parameters));
}
/**
* Get the middleware for the controller instance.
*
* @param \Illuminate\Routing\Controller $controller
* @param string $method
* @return array
*/
public function getMiddleware($controller, $method)
{
if (! method_exists($controller, 'getMiddleware')) {
return [];
}
return collect($controller->getMiddleware())->reject(function ($data) use ($method) {
return static::methodExcludedByOptions($method, $data['options']);
Arguments
"article_view"
array:1 [
"id" => "262"
]
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Routing
/Route.php
protected function runCallable()
{
$callable = $this->action['uses'];
return $callable(...array_values($this->resolveMethodDependencies(
$this->parametersWithoutNulls(), new ReflectionFunction($this->action['uses'])
)));
}
/**
* Run the route action and return the response.
*
* @return mixed
*
* @throws \Symfony\Component\HttpKernel\Exception\NotFoundHttpException
*/
protected function runController()
{
return $this->controllerDispatcher()->dispatch(
$this, $this->getController(), $this->getControllerMethod()
);
}
/**
* Get the controller instance for the route.
*
* @return mixed
*/
public function getController()
{
if (! $this->controller) {
$class = $this->parseControllerCallback()[0];
$this->controller = $this->container->make(ltrim($class, '\\'));
}
return $this->controller;
}
/**
Arguments
Route {#881}
HomeController {#1047}
"article_view"
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Routing
/Route.php
*
* @throws \UnexpectedValueException
*/
protected function parseAction($action)
{
return RouteAction::parse($this->uri, $action);
}
/**
* Run the route action and return the response.
*
* @return mixed
*/
public function run()
{
$this->container = $this->container ?: new Container;
try {
if ($this->isControllerAction()) {
return $this->runController();
}
return $this->runCallable();
} catch (HttpResponseException $e) {
return $e->getResponse();
}
}
/**
* Checks whether the route's action is a controller.
*
* @return bool
*/
protected function isControllerAction()
{
return is_string($this->action['uses']);
}
/**
* Run the route action and return the response.
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Routing
/Router.php
/**
* Run the given route within a Stack "onion" instance.
*
* @param \Illuminate\Routing\Route $route
* @param \Illuminate\Http\Request $request
* @return mixed
*/
protected function runRouteWithinStack(Route $route, Request $request)
{
$shouldSkipMiddleware = $this->container->bound('middleware.disable') &&
$this->container->make('middleware.disable') === true;
$middleware = $shouldSkipMiddleware ? [] : $this->gatherRouteMiddleware($route);
return (new Pipeline($this->container))
->send($request)
->through($middleware)
->then(function ($request) use ($route) {
return $this->prepareResponse(
$request, $route->run()
);
});
}
/**
* Gather the middleware for the given route with resolved class names.
*
* @param \Illuminate\Routing\Route $route
* @return array
*/
public function gatherRouteMiddleware(Route $route)
{
$middleware = collect($route->gatherMiddleware())->map(function ($name) {
return (array) MiddlewareNameResolver::resolve($name, $this->middleware, $this->middlewareGroups);
})->flatten();
return $this->sortMiddleware($middleware);
}
/**
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Routing
/Pipeline.php
use Symfony\Component\Debug\Exception\FatalThrowableError;
/**
* This extended pipeline catches any exceptions that occur during each slice.
*
* The exceptions are converted to HTTP responses for proper middleware handling.
*/
class Pipeline extends BasePipeline
{
/**
* Get the final piece of the Closure onion.
*
* @param \Closure $destination
* @return \Closure
*/
protected function prepareDestination(Closure $destination)
{
return function ($passable) use ($destination) {
try {
return $destination($passable);
} catch (Exception $e) {
return $this->handleException($passable, $e);
} catch (Throwable $e) {
return $this->handleException($passable, new FatalThrowableError($e));
}
};
}
/**
* Get a Closure that represents a slice of the application onion.
*
* @return \Closure
*/
protected function carry()
{
return function ($stack, $pipe) {
return function ($passable) use ($stack, $pipe) {
try {
$slice = parent::carry();
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
/www
/wwwroot
/dun
/app
/Http
/Middleware
/Token.php
$res = file_get_contents($url);
$profile = json_decode($res, true);
$userId = $profile['data']['user']['id'];
$user = User::find($userId);
Auth::loginUsingId($userId);
if (Auth::check()) {
$time = time();
setcookie('laravel_name', $user->name, $time + 3600, '/', env('SESSION_DOMAIN'));
setcookie('laravel_utokens', md5($user->password . $time) . $time, $time + 3600, '/', env('SESSION_DOMAIN'));
$request->session()->forget('token');
$request->session()->push('token', $token);
} else {
if ($request->ajax()) {
return ['code' => 1, 'msg' => 'token错误',];
} else {
return redirect('/login');
}
}
}
return $next($request);
}
}
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Pipeline
/Pipeline.php
// the appropriate method and arguments, returning the results back out.
return $pipe($passable, $stack);
} elseif (! is_object($pipe)) {
list($name, $parameters) = $this->parsePipeString($pipe);
// If the pipe is a string we will parse the string and resolve the class out
// of the dependency injection container. We can then build a callable and
// execute the pipe function giving in the parameters that are required.
$pipe = $this->getContainer()->make($name);
$parameters = array_merge([$passable, $stack], $parameters);
} else {
// If the pipe is already an object we'll just make a callable and pass it to
// the pipe as-is. There is no need to do any extra parsing and formatting
// since the object we're given was already a fully instantiated object.
$parameters = [$passable, $stack];
}
return method_exists($pipe, $this->method)
? $pipe->{$this->method}(...$parameters)
: $pipe(...$parameters);
};
};
}
/**
* Parse full pipe string to get name and parameters.
*
* @param string $pipe
* @return array
*/
protected function parsePipeString($pipe)
{
list($name, $parameters) = array_pad(explode(':', $pipe, 2), 2, []);
if (is_string($parameters)) {
$parameters = explode(',', $parameters);
}
return [$name, $parameters];
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
Closure {#1048
class: "Illuminate\Routing\Pipeline"
this: Pipeline {#1037 …}
parameters: {
$passable: {}
}
use: {
$destination: Closure {#1042 …}
}
}
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Routing
/Pipeline.php
return $this->handleException($passable, new FatalThrowableError($e));
}
};
}
/**
* Get a Closure that represents a slice of the application onion.
*
* @return \Closure
*/
protected function carry()
{
return function ($stack, $pipe) {
return function ($passable) use ($stack, $pipe) {
try {
$slice = parent::carry();
$callable = $slice($stack, $pipe);
return $callable($passable);
} catch (Exception $e) {
return $this->handleException($passable, $e);
} catch (Throwable $e) {
return $this->handleException($passable, new FatalThrowableError($e));
}
};
};
}
/**
* Handle the given exception.
*
* @param mixed $passable
* @param \Exception $e
* @return mixed
*
* @throws \Exception
*/
protected function handleException($passable, Exception $e)
{
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
/www
/wwwroot
/dun
/app
/Http
/Middleware
/SeoMiddleware.php
setcookie('word', mb_convert_encoding(urldecode($data[0]),'UTF-8','UTF-8,GBK,GB2312,BIG5'), time() + 24 * 60 * 60 * 365, '/');
setcookie('pageurl',$url, time() + 24 * 60 * 60 * 365, '/');//用来和百度线索对接
setcookie('refer', $refer, time() - 1, '/');
}
$tmp['url'] =substr( $refer,0,250);
if (!$_COOKIE['refer']) {
$tmp['ip'] = $ip;
Seo::create($tmp);
}
setcookie('refer', $refer, time() + 24 * 60 * 60 * 365, '/');
}
$customerId = $request->get('customerId');
if ($customerId) {
if (Admin_user::find(intval($customerId))) {
setcookie('customerId', $customerId, time() + 24 * 60 * 60 * 365, '/','.59dun.com');
}
}
return $next($request);
}
public function getIp()
{
if (!empty($_SERVER["HTTP_CLIENT_IP"])) {
$cip = $_SERVER["HTTP_CLIENT_IP"];
} else if (!empty($_SERVER["HTTP_X_FORWARDED_FOR"])) {
$cip = $_SERVER["HTTP_X_FORWARDED_FOR"];
} else if (!empty($_SERVER["REMOTE_ADDR"])) {
$cip = $_SERVER["REMOTE_ADDR"];
} else {
$cip = '';
}
preg_match("/[\d\.]{7,15}/", $cip, $cips);
$cip = isset($cips[0]) ? $cips[0] : 'unknown';
unset($cips);
return $cip;
}
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Pipeline
/Pipeline.php
// the appropriate method and arguments, returning the results back out.
return $pipe($passable, $stack);
} elseif (! is_object($pipe)) {
list($name, $parameters) = $this->parsePipeString($pipe);
// If the pipe is a string we will parse the string and resolve the class out
// of the dependency injection container. We can then build a callable and
// execute the pipe function giving in the parameters that are required.
$pipe = $this->getContainer()->make($name);
$parameters = array_merge([$passable, $stack], $parameters);
} else {
// If the pipe is already an object we'll just make a callable and pass it to
// the pipe as-is. There is no need to do any extra parsing and formatting
// since the object we're given was already a fully instantiated object.
$parameters = [$passable, $stack];
}
return method_exists($pipe, $this->method)
? $pipe->{$this->method}(...$parameters)
: $pipe(...$parameters);
};
};
}
/**
* Parse full pipe string to get name and parameters.
*
* @param string $pipe
* @return array
*/
protected function parsePipeString($pipe)
{
list($name, $parameters) = array_pad(explode(':', $pipe, 2), 2, []);
if (is_string($parameters)) {
$parameters = explode(',', $parameters);
}
return [$name, $parameters];
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
Closure {#1443
class: "Illuminate\Routing\Pipeline"
this: Pipeline {#1037 …}
parameters: {
$passable: {}
}
use: {
$stack: Closure {#1048 …}
$pipe: "App\Http\Middleware\Token"
}
}
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Routing
/Pipeline.php
return $this->handleException($passable, new FatalThrowableError($e));
}
};
}
/**
* Get a Closure that represents a slice of the application onion.
*
* @return \Closure
*/
protected function carry()
{
return function ($stack, $pipe) {
return function ($passable) use ($stack, $pipe) {
try {
$slice = parent::carry();
$callable = $slice($stack, $pipe);
return $callable($passable);
} catch (Exception $e) {
return $this->handleException($passable, $e);
} catch (Throwable $e) {
return $this->handleException($passable, new FatalThrowableError($e));
}
};
};
}
/**
* Handle the given exception.
*
* @param mixed $passable
* @param \Exception $e
* @return mixed
*
* @throws \Exception
*/
protected function handleException($passable, Exception $e)
{
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
/www
/wwwroot
/dun
/app
/Http
/Middleware
/CheckResponse.php
use Closure;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Log;
class CheckResponse
{
private $except = [
'info',
'login',
'logout',
'register',
'doRegister',
'captcha/default',
];
public function handle(Request $request, Closure $next)
{
$response = $next($request);
if ($request->ajax() || $request->isMethod('post')) {
return $response;
}
$response->headers->remove('Cache-Control');
$path = $request->path();
Log::info('path ', [$path]);
if (!in_array($path, $this->except)) {
$interval = 3600;
header("Etag: " . time().rand());
header("Cache-Control: max-age=$interval");
}
return $response;
}
}
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Pipeline
/Pipeline.php
// the appropriate method and arguments, returning the results back out.
return $pipe($passable, $stack);
} elseif (! is_object($pipe)) {
list($name, $parameters) = $this->parsePipeString($pipe);
// If the pipe is a string we will parse the string and resolve the class out
// of the dependency injection container. We can then build a callable and
// execute the pipe function giving in the parameters that are required.
$pipe = $this->getContainer()->make($name);
$parameters = array_merge([$passable, $stack], $parameters);
} else {
// If the pipe is already an object we'll just make a callable and pass it to
// the pipe as-is. There is no need to do any extra parsing and formatting
// since the object we're given was already a fully instantiated object.
$parameters = [$passable, $stack];
}
return method_exists($pipe, $this->method)
? $pipe->{$this->method}(...$parameters)
: $pipe(...$parameters);
};
};
}
/**
* Parse full pipe string to get name and parameters.
*
* @param string $pipe
* @return array
*/
protected function parsePipeString($pipe)
{
list($name, $parameters) = array_pad(explode(':', $pipe, 2), 2, []);
if (is_string($parameters)) {
$parameters = explode(',', $parameters);
}
return [$name, $parameters];
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
Closure {#1444
class: "Illuminate\Routing\Pipeline"
this: Pipeline {#1037 …}
parameters: {
$passable: {}
}
use: {
$stack: Closure {#1443 …}
$pipe: "App\Http\Middleware\SeoMiddleware"
}
}
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Routing
/Pipeline.php
return $this->handleException($passable, new FatalThrowableError($e));
}
};
}
/**
* Get a Closure that represents a slice of the application onion.
*
* @return \Closure
*/
protected function carry()
{
return function ($stack, $pipe) {
return function ($passable) use ($stack, $pipe) {
try {
$slice = parent::carry();
$callable = $slice($stack, $pipe);
return $callable($passable);
} catch (Exception $e) {
return $this->handleException($passable, $e);
} catch (Throwable $e) {
return $this->handleException($passable, new FatalThrowableError($e));
}
};
};
}
/**
* Handle the given exception.
*
* @param mixed $passable
* @param \Exception $e
* @return mixed
*
* @throws \Exception
*/
protected function handleException($passable, Exception $e)
{
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Routing
/Middleware
/SubstituteBindings.php
*/
public function __construct(Registrar $router)
{
$this->router = $router;
}
/**
* Handle an incoming request.
*
* @param \Illuminate\Http\Request $request
* @param \Closure $next
* @return mixed
*/
public function handle($request, Closure $next)
{
$this->router->substituteBindings($route = $request->route());
$this->router->substituteImplicitBindings($route);
return $next($request);
}
}
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Pipeline
/Pipeline.php
// the appropriate method and arguments, returning the results back out.
return $pipe($passable, $stack);
} elseif (! is_object($pipe)) {
list($name, $parameters) = $this->parsePipeString($pipe);
// If the pipe is a string we will parse the string and resolve the class out
// of the dependency injection container. We can then build a callable and
// execute the pipe function giving in the parameters that are required.
$pipe = $this->getContainer()->make($name);
$parameters = array_merge([$passable, $stack], $parameters);
} else {
// If the pipe is already an object we'll just make a callable and pass it to
// the pipe as-is. There is no need to do any extra parsing and formatting
// since the object we're given was already a fully instantiated object.
$parameters = [$passable, $stack];
}
return method_exists($pipe, $this->method)
? $pipe->{$this->method}(...$parameters)
: $pipe(...$parameters);
};
};
}
/**
* Parse full pipe string to get name and parameters.
*
* @param string $pipe
* @return array
*/
protected function parsePipeString($pipe)
{
list($name, $parameters) = array_pad(explode(':', $pipe, 2), 2, []);
if (is_string($parameters)) {
$parameters = explode(',', $parameters);
}
return [$name, $parameters];
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
Closure {#1445
class: "Illuminate\Routing\Pipeline"
this: Pipeline {#1037 …}
parameters: {
$passable: {}
}
use: {
$stack: Closure {#1444 …}
$pipe: "App\Http\Middleware\CheckResponse"
}
}
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Routing
/Pipeline.php
return $this->handleException($passable, new FatalThrowableError($e));
}
};
}
/**
* Get a Closure that represents a slice of the application onion.
*
* @return \Closure
*/
protected function carry()
{
return function ($stack, $pipe) {
return function ($passable) use ($stack, $pipe) {
try {
$slice = parent::carry();
$callable = $slice($stack, $pipe);
return $callable($passable);
} catch (Exception $e) {
return $this->handleException($passable, $e);
} catch (Throwable $e) {
return $this->handleException($passable, new FatalThrowableError($e));
}
};
};
}
/**
* Handle the given exception.
*
* @param mixed $passable
* @param \Exception $e
* @return mixed
*
* @throws \Exception
*/
protected function handleException($passable, Exception $e)
{
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Foundation
/Http
/Middleware
/VerifyCsrfToken.php
}
/**
* Handle an incoming request.
*
* @param \Illuminate\Http\Request $request
* @param \Closure $next
* @return mixed
*
* @throws \Illuminate\Session\TokenMismatchException
*/
public function handle($request, Closure $next)
{
if (
$this->isReading($request) ||
$this->runningUnitTests() ||
$this->inExceptArray($request) ||
$this->tokensMatch($request)
) {
return $this->addCookieToResponse($request, $next($request));
}
throw new TokenMismatchException;
}
/**
* Determine if the HTTP request uses a ‘read’ verb.
*
* @param \Illuminate\Http\Request $request
* @return bool
*/
protected function isReading($request)
{
return in_array($request->method(), ['HEAD', 'GET', 'OPTIONS']);
}
/**
* Determine if the application is running unit tests.
*
* @return bool
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Pipeline
/Pipeline.php
// the appropriate method and arguments, returning the results back out.
return $pipe($passable, $stack);
} elseif (! is_object($pipe)) {
list($name, $parameters) = $this->parsePipeString($pipe);
// If the pipe is a string we will parse the string and resolve the class out
// of the dependency injection container. We can then build a callable and
// execute the pipe function giving in the parameters that are required.
$pipe = $this->getContainer()->make($name);
$parameters = array_merge([$passable, $stack], $parameters);
} else {
// If the pipe is already an object we'll just make a callable and pass it to
// the pipe as-is. There is no need to do any extra parsing and formatting
// since the object we're given was already a fully instantiated object.
$parameters = [$passable, $stack];
}
return method_exists($pipe, $this->method)
? $pipe->{$this->method}(...$parameters)
: $pipe(...$parameters);
};
};
}
/**
* Parse full pipe string to get name and parameters.
*
* @param string $pipe
* @return array
*/
protected function parsePipeString($pipe)
{
list($name, $parameters) = array_pad(explode(':', $pipe, 2), 2, []);
if (is_string($parameters)) {
$parameters = explode(',', $parameters);
}
return [$name, $parameters];
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
Closure {#1446
class: "Illuminate\Routing\Pipeline"
this: Pipeline {#1037 …}
parameters: {
$passable: {}
}
use: {
$stack: Closure {#1445 …}
$pipe: "Illuminate\Routing\Middleware\SubstituteBindings"
}
}
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Routing
/Pipeline.php
return $this->handleException($passable, new FatalThrowableError($e));
}
};
}
/**
* Get a Closure that represents a slice of the application onion.
*
* @return \Closure
*/
protected function carry()
{
return function ($stack, $pipe) {
return function ($passable) use ($stack, $pipe) {
try {
$slice = parent::carry();
$callable = $slice($stack, $pipe);
return $callable($passable);
} catch (Exception $e) {
return $this->handleException($passable, $e);
} catch (Throwable $e) {
return $this->handleException($passable, new FatalThrowableError($e));
}
};
};
}
/**
* Handle the given exception.
*
* @param mixed $passable
* @param \Exception $e
* @return mixed
*
* @throws \Exception
*/
protected function handleException($passable, Exception $e)
{
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/View
/Middleware
/ShareErrorsFromSession.php
* Handle an incoming request.
*
* @param \Illuminate\Http\Request $request
* @param \Closure $next
* @return mixed
*/
public function handle($request, Closure $next)
{
// If the current session has an "errors" variable bound to it, we will share
// its value with all view instances so the views can easily access errors
// without having to bind. An empty bag is set when there aren't errors.
$this->view->share(
'errors', $request->session()->get('errors') ?: new ViewErrorBag
);
// Putting the errors in the view for every view allows the developer to just
// assume that some errors are always available, which is convenient since
// they don't have to continually run checks for the presence of errors.
return $next($request);
}
}
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Pipeline
/Pipeline.php
// the appropriate method and arguments, returning the results back out.
return $pipe($passable, $stack);
} elseif (! is_object($pipe)) {
list($name, $parameters) = $this->parsePipeString($pipe);
// If the pipe is a string we will parse the string and resolve the class out
// of the dependency injection container. We can then build a callable and
// execute the pipe function giving in the parameters that are required.
$pipe = $this->getContainer()->make($name);
$parameters = array_merge([$passable, $stack], $parameters);
} else {
// If the pipe is already an object we'll just make a callable and pass it to
// the pipe as-is. There is no need to do any extra parsing and formatting
// since the object we're given was already a fully instantiated object.
$parameters = [$passable, $stack];
}
return method_exists($pipe, $this->method)
? $pipe->{$this->method}(...$parameters)
: $pipe(...$parameters);
};
};
}
/**
* Parse full pipe string to get name and parameters.
*
* @param string $pipe
* @return array
*/
protected function parsePipeString($pipe)
{
list($name, $parameters) = array_pad(explode(':', $pipe, 2), 2, []);
if (is_string($parameters)) {
$parameters = explode(',', $parameters);
}
return [$name, $parameters];
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
Closure {#1447
class: "Illuminate\Routing\Pipeline"
this: Pipeline {#1037 …}
parameters: {
$passable: {}
}
use: {
$stack: Closure {#1446 …}
$pipe: "App\Http\Middleware\VerifyCsrfToken"
}
}
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Routing
/Pipeline.php
return $this->handleException($passable, new FatalThrowableError($e));
}
};
}
/**
* Get a Closure that represents a slice of the application onion.
*
* @return \Closure
*/
protected function carry()
{
return function ($stack, $pipe) {
return function ($passable) use ($stack, $pipe) {
try {
$slice = parent::carry();
$callable = $slice($stack, $pipe);
return $callable($passable);
} catch (Exception $e) {
return $this->handleException($passable, $e);
} catch (Throwable $e) {
return $this->handleException($passable, new FatalThrowableError($e));
}
};
};
}
/**
* Handle the given exception.
*
* @param mixed $passable
* @param \Exception $e
* @return mixed
*
* @throws \Exception
*/
protected function handleException($passable, Exception $e)
{
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Session
/Middleware
/StartSession.php
* @param \Illuminate\Http\Request $request
* @param \Closure $next
* @return mixed
*/
public function handle($request, Closure $next)
{
$this->sessionHandled = true;
// If a session driver has been configured, we will need to start the session here
// so that the data is ready for an application. Note that the Laravel sessions
// do not make use of PHP "native" sessions in any way since they are crappy.
if ($this->sessionConfigured()) {
$request->setLaravelSession(
$session = $this->startSession($request)
);
$this->collectGarbage($session);
}
$response = $next($request);
// Again, if the session has been configured we will need to close out the session
// so that the attributes may be persisted to some storage medium. We will also
// add the session identifier cookie to the application response headers now.
if ($this->sessionConfigured()) {
$this->storeCurrentUrl($request, $session);
$this->addCookieToResponse($response, $session);
}
return $response;
}
/**
* Perform any final actions for the request lifecycle.
*
* @param \Illuminate\Http\Request $request
* @param \Symfony\Component\HttpFoundation\Response $response
* @return void
*/
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Pipeline
/Pipeline.php
// the appropriate method and arguments, returning the results back out.
return $pipe($passable, $stack);
} elseif (! is_object($pipe)) {
list($name, $parameters) = $this->parsePipeString($pipe);
// If the pipe is a string we will parse the string and resolve the class out
// of the dependency injection container. We can then build a callable and
// execute the pipe function giving in the parameters that are required.
$pipe = $this->getContainer()->make($name);
$parameters = array_merge([$passable, $stack], $parameters);
} else {
// If the pipe is already an object we'll just make a callable and pass it to
// the pipe as-is. There is no need to do any extra parsing and formatting
// since the object we're given was already a fully instantiated object.
$parameters = [$passable, $stack];
}
return method_exists($pipe, $this->method)
? $pipe->{$this->method}(...$parameters)
: $pipe(...$parameters);
};
};
}
/**
* Parse full pipe string to get name and parameters.
*
* @param string $pipe
* @return array
*/
protected function parsePipeString($pipe)
{
list($name, $parameters) = array_pad(explode(':', $pipe, 2), 2, []);
if (is_string($parameters)) {
$parameters = explode(',', $parameters);
}
return [$name, $parameters];
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
Closure {#1448
class: "Illuminate\Routing\Pipeline"
this: Pipeline {#1037 …}
parameters: {
$passable: {}
}
use: {
$stack: Closure {#1447 …}
$pipe: "Illuminate\View\Middleware\ShareErrorsFromSession"
}
}
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Routing
/Pipeline.php
return $this->handleException($passable, new FatalThrowableError($e));
}
};
}
/**
* Get a Closure that represents a slice of the application onion.
*
* @return \Closure
*/
protected function carry()
{
return function ($stack, $pipe) {
return function ($passable) use ($stack, $pipe) {
try {
$slice = parent::carry();
$callable = $slice($stack, $pipe);
return $callable($passable);
} catch (Exception $e) {
return $this->handleException($passable, $e);
} catch (Throwable $e) {
return $this->handleException($passable, new FatalThrowableError($e));
}
};
};
}
/**
* Handle the given exception.
*
* @param mixed $passable
* @param \Exception $e
* @return mixed
*
* @throws \Exception
*/
protected function handleException($passable, Exception $e)
{
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Cookie
/Middleware
/AddQueuedCookiesToResponse.php
* Create a new CookieQueue instance.
*
* @param \Illuminate\Contracts\Cookie\QueueingFactory $cookies
* @return void
*/
public function __construct(CookieJar $cookies)
{
$this->cookies = $cookies;
}
/**
* Handle an incoming request.
*
* @param \Illuminate\Http\Request $request
* @param \Closure $next
* @return mixed
*/
public function handle($request, Closure $next)
{
$response = $next($request);
foreach ($this->cookies->getQueuedCookies() as $cookie) {
$response->headers->setCookie($cookie);
}
return $response;
}
}
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Pipeline
/Pipeline.php
// the appropriate method and arguments, returning the results back out.
return $pipe($passable, $stack);
} elseif (! is_object($pipe)) {
list($name, $parameters) = $this->parsePipeString($pipe);
// If the pipe is a string we will parse the string and resolve the class out
// of the dependency injection container. We can then build a callable and
// execute the pipe function giving in the parameters that are required.
$pipe = $this->getContainer()->make($name);
$parameters = array_merge([$passable, $stack], $parameters);
} else {
// If the pipe is already an object we'll just make a callable and pass it to
// the pipe as-is. There is no need to do any extra parsing and formatting
// since the object we're given was already a fully instantiated object.
$parameters = [$passable, $stack];
}
return method_exists($pipe, $this->method)
? $pipe->{$this->method}(...$parameters)
: $pipe(...$parameters);
};
};
}
/**
* Parse full pipe string to get name and parameters.
*
* @param string $pipe
* @return array
*/
protected function parsePipeString($pipe)
{
list($name, $parameters) = array_pad(explode(':', $pipe, 2), 2, []);
if (is_string($parameters)) {
$parameters = explode(',', $parameters);
}
return [$name, $parameters];
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
Closure {#1449
class: "Illuminate\Routing\Pipeline"
this: Pipeline {#1037 …}
parameters: {
$passable: {}
}
use: {
$stack: Closure {#1448 …}
$pipe: "Illuminate\Session\Middleware\StartSession"
}
}
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Routing
/Pipeline.php
return $this->handleException($passable, new FatalThrowableError($e));
}
};
}
/**
* Get a Closure that represents a slice of the application onion.
*
* @return \Closure
*/
protected function carry()
{
return function ($stack, $pipe) {
return function ($passable) use ($stack, $pipe) {
try {
$slice = parent::carry();
$callable = $slice($stack, $pipe);
return $callable($passable);
} catch (Exception $e) {
return $this->handleException($passable, $e);
} catch (Throwable $e) {
return $this->handleException($passable, new FatalThrowableError($e));
}
};
};
}
/**
* Handle the given exception.
*
* @param mixed $passable
* @param \Exception $e
* @return mixed
*
* @throws \Exception
*/
protected function handleException($passable, Exception $e)
{
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Cookie
/Middleware
/EncryptCookies.php
* Disable encryption for the given cookie name(s).
*
* @param string|array $cookieName
* @return void
*/
public function disableFor($cookieName)
{
$this->except = array_merge($this->except, (array) $cookieName);
}
/**
* Handle an incoming request.
*
* @param \Illuminate\Http\Request $request
* @param \Closure $next
* @return mixed
*/
public function handle($request, Closure $next)
{
return $this->encrypt($next($this->decrypt($request)));
}
/**
* Decrypt the cookies on the request.
*
* @param \Symfony\Component\HttpFoundation\Request $request
* @return \Symfony\Component\HttpFoundation\Request
*/
protected function decrypt(Request $request)
{
foreach ($request->cookies as $key => $c) {
if ($this->isDisabled($key)) {
continue;
}
try {
$request->cookies->set($key, $this->decryptCookie($c));
} catch (DecryptException $e) {
$request->cookies->set($key, null);
}
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Pipeline
/Pipeline.php
// the appropriate method and arguments, returning the results back out.
return $pipe($passable, $stack);
} elseif (! is_object($pipe)) {
list($name, $parameters) = $this->parsePipeString($pipe);
// If the pipe is a string we will parse the string and resolve the class out
// of the dependency injection container. We can then build a callable and
// execute the pipe function giving in the parameters that are required.
$pipe = $this->getContainer()->make($name);
$parameters = array_merge([$passable, $stack], $parameters);
} else {
// If the pipe is already an object we'll just make a callable and pass it to
// the pipe as-is. There is no need to do any extra parsing and formatting
// since the object we're given was already a fully instantiated object.
$parameters = [$passable, $stack];
}
return method_exists($pipe, $this->method)
? $pipe->{$this->method}(...$parameters)
: $pipe(...$parameters);
};
};
}
/**
* Parse full pipe string to get name and parameters.
*
* @param string $pipe
* @return array
*/
protected function parsePipeString($pipe)
{
list($name, $parameters) = array_pad(explode(':', $pipe, 2), 2, []);
if (is_string($parameters)) {
$parameters = explode(',', $parameters);
}
return [$name, $parameters];
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
Closure {#1450
class: "Illuminate\Routing\Pipeline"
this: Pipeline {#1037 …}
parameters: {
$passable: {}
}
use: {
$stack: Closure {#1449 …}
$pipe: "Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse"
}
}
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Routing
/Pipeline.php
return $this->handleException($passable, new FatalThrowableError($e));
}
};
}
/**
* Get a Closure that represents a slice of the application onion.
*
* @return \Closure
*/
protected function carry()
{
return function ($stack, $pipe) {
return function ($passable) use ($stack, $pipe) {
try {
$slice = parent::carry();
$callable = $slice($stack, $pipe);
return $callable($passable);
} catch (Exception $e) {
return $this->handleException($passable, $e);
} catch (Throwable $e) {
return $this->handleException($passable, new FatalThrowableError($e));
}
};
};
}
/**
* Handle the given exception.
*
* @param mixed $passable
* @param \Exception $e
* @return mixed
*
* @throws \Exception
*/
protected function handleException($passable, Exception $e)
{
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
/www
/wwwroot
/dun
/app
/Http
/Middleware
/MobileCheck.php
$urlString = "59duns";
$request_url = $request->url();
if(strpos($request_url, $urlString) == false){
//包含
$url_extension = ltrim($request->path(),'/');
if(is_mobile()) {
$customerId = $request->get('customerId');
if ($customerId) {
if (Admin_user::find(intval($customerId))) {
setcookie('customerId', $customerId, time() + 24 * 60 * 60 * 365, '/');
}
return redirect('https://m.59dun.com'.($url_extension?'/'.$url_extension:'').'?customerId='.$customerId,301);
}else{
return redirect('https://m.59dun.com'.($url_extension?'/'.$url_extension:''),301);
}
}
}
return $next($request);
}
}
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Pipeline
/Pipeline.php
// the appropriate method and arguments, returning the results back out.
return $pipe($passable, $stack);
} elseif (! is_object($pipe)) {
list($name, $parameters) = $this->parsePipeString($pipe);
// If the pipe is a string we will parse the string and resolve the class out
// of the dependency injection container. We can then build a callable and
// execute the pipe function giving in the parameters that are required.
$pipe = $this->getContainer()->make($name);
$parameters = array_merge([$passable, $stack], $parameters);
} else {
// If the pipe is already an object we'll just make a callable and pass it to
// the pipe as-is. There is no need to do any extra parsing and formatting
// since the object we're given was already a fully instantiated object.
$parameters = [$passable, $stack];
}
return method_exists($pipe, $this->method)
? $pipe->{$this->method}(...$parameters)
: $pipe(...$parameters);
};
};
}
/**
* Parse full pipe string to get name and parameters.
*
* @param string $pipe
* @return array
*/
protected function parsePipeString($pipe)
{
list($name, $parameters) = array_pad(explode(':', $pipe, 2), 2, []);
if (is_string($parameters)) {
$parameters = explode(',', $parameters);
}
return [$name, $parameters];
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
Closure {#1451
class: "Illuminate\Routing\Pipeline"
this: Pipeline {#1037 …}
parameters: {
$passable: {}
}
use: {
$stack: Closure {#1450 …}
$pipe: "App\Http\Middleware\EncryptCookies"
}
}
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Routing
/Pipeline.php
return $this->handleException($passable, new FatalThrowableError($e));
}
};
}
/**
* Get a Closure that represents a slice of the application onion.
*
* @return \Closure
*/
protected function carry()
{
return function ($stack, $pipe) {
return function ($passable) use ($stack, $pipe) {
try {
$slice = parent::carry();
$callable = $slice($stack, $pipe);
return $callable($passable);
} catch (Exception $e) {
return $this->handleException($passable, $e);
} catch (Throwable $e) {
return $this->handleException($passable, new FatalThrowableError($e));
}
};
};
}
/**
* Handle the given exception.
*
* @param mixed $passable
* @param \Exception $e
* @return mixed
*
* @throws \Exception
*/
protected function handleException($passable, Exception $e)
{
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
/www
/wwwroot
/dun
/app
/Http
/Middleware
/BlackIP.php
{
// if(isset($_SERVER['HTTP_X_FORWARDED_FOR'])) {
// $ips = $_SERVER['HTTP_X_FORWARDED_FOR'];
// $ip = storage_path('blackips/'.$ips);
// if(!is_file($ip)) {
// $logins = ['num' => 1, 'time' => time()];
// file_put_contents($ip,json_encode($logins));
// }else{
// $logins = json_decode(file_get_contents($ip),true);
// }
// if ($logins['num'] > 10 && ((time() - $logins['time']) <= 60)) {
// file_put_contents(storage_path("black_ip.txt"), $ips."\r\n", FILE_APPEND);
// return redirect("errors/403");
// } else {
// unlink($ip);
// }
// $logins['num'] = $logins['num'] + 1;
// file_put_contents($ip,json_encode(['num' => $logins['num'], 'time' => $logins['time']]));
// }
return $next($request);
}
}
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Pipeline
/Pipeline.php
// the appropriate method and arguments, returning the results back out.
return $pipe($passable, $stack);
} elseif (! is_object($pipe)) {
list($name, $parameters) = $this->parsePipeString($pipe);
// If the pipe is a string we will parse the string and resolve the class out
// of the dependency injection container. We can then build a callable and
// execute the pipe function giving in the parameters that are required.
$pipe = $this->getContainer()->make($name);
$parameters = array_merge([$passable, $stack], $parameters);
} else {
// If the pipe is already an object we'll just make a callable and pass it to
// the pipe as-is. There is no need to do any extra parsing and formatting
// since the object we're given was already a fully instantiated object.
$parameters = [$passable, $stack];
}
return method_exists($pipe, $this->method)
? $pipe->{$this->method}(...$parameters)
: $pipe(...$parameters);
};
};
}
/**
* Parse full pipe string to get name and parameters.
*
* @param string $pipe
* @return array
*/
protected function parsePipeString($pipe)
{
list($name, $parameters) = array_pad(explode(':', $pipe, 2), 2, []);
if (is_string($parameters)) {
$parameters = explode(',', $parameters);
}
return [$name, $parameters];
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
Closure {#1452
class: "Illuminate\Routing\Pipeline"
this: Pipeline {#1037 …}
parameters: {
$passable: {}
}
use: {
$stack: Closure {#1451 …}
$pipe: "App\Http\Middleware\MobileCheck"
}
}
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Routing
/Pipeline.php
return $this->handleException($passable, new FatalThrowableError($e));
}
};
}
/**
* Get a Closure that represents a slice of the application onion.
*
* @return \Closure
*/
protected function carry()
{
return function ($stack, $pipe) {
return function ($passable) use ($stack, $pipe) {
try {
$slice = parent::carry();
$callable = $slice($stack, $pipe);
return $callable($passable);
} catch (Exception $e) {
return $this->handleException($passable, $e);
} catch (Throwable $e) {
return $this->handleException($passable, new FatalThrowableError($e));
}
};
};
}
/**
* Handle the given exception.
*
* @param mixed $passable
* @param \Exception $e
* @return mixed
*
* @throws \Exception
*/
protected function handleException($passable, Exception $e)
{
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Pipeline
/Pipeline.php
public function via($method)
{
$this->method = $method;
return $this;
}
/**
* Run the pipeline with a final destination callback.
*
* @param \Closure $destination
* @return mixed
*/
public function then(Closure $destination)
{
$pipeline = array_reduce(
array_reverse($this->pipes), $this->carry(), $this->prepareDestination($destination)
);
return $pipeline($this->passable);
}
/**
* Get the final piece of the Closure onion.
*
* @param \Closure $destination
* @return \Closure
*/
protected function prepareDestination(Closure $destination)
{
return function ($passable) use ($destination) {
return $destination($passable);
};
}
/**
* Get a Closure that represents a slice of the application onion.
*
* @return \Closure
*/
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Routing
/Router.php
*
* @param \Illuminate\Routing\Route $route
* @param \Illuminate\Http\Request $request
* @return mixed
*/
protected function runRouteWithinStack(Route $route, Request $request)
{
$shouldSkipMiddleware = $this->container->bound('middleware.disable') &&
$this->container->make('middleware.disable') === true;
$middleware = $shouldSkipMiddleware ? [] : $this->gatherRouteMiddleware($route);
return (new Pipeline($this->container))
->send($request)
->through($middleware)
->then(function ($request) use ($route) {
return $this->prepareResponse(
$request, $route->run()
);
});
}
/**
* Gather the middleware for the given route with resolved class names.
*
* @param \Illuminate\Routing\Route $route
* @return array
*/
public function gatherRouteMiddleware(Route $route)
{
$middleware = collect($route->gatherMiddleware())->map(function ($name) {
return (array) MiddlewareNameResolver::resolve($name, $this->middleware, $this->middlewareGroups);
})->flatten();
return $this->sortMiddleware($middleware);
}
/**
* Sort the given middleware by priority.
*
Arguments
Closure {#1042
class: "Illuminate\Routing\Router"
this: Router {#25 …}
parameters: {
$request: {}
}
use: {
$route: Route {#881 …}
}
}
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Routing
/Router.php
return $route;
}
/**
* Return the response for the given route.
*
* @param Route $route
* @param Request $request
* @return mixed
*/
protected function runRoute(Request $request, Route $route)
{
$request->setRouteResolver(function () use ($route) {
return $route;
});
$this->events->dispatch(new Events\RouteMatched($route, $request));
return $this->prepareResponse($request,
$this->runRouteWithinStack($route, $request)
);
}
/**
* Run the given route within a Stack "onion" instance.
*
* @param \Illuminate\Routing\Route $route
* @param \Illuminate\Http\Request $request
* @return mixed
*/
protected function runRouteWithinStack(Route $route, Request $request)
{
$shouldSkipMiddleware = $this->container->bound('middleware.disable') &&
$this->container->make('middleware.disable') === true;
$middleware = $shouldSkipMiddleware ? [] : $this->gatherRouteMiddleware($route);
return (new Pipeline($this->container))
->send($request)
->through($middleware)
Arguments
Route {#881}
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Routing
/Router.php
*
* @param \Illuminate\Http\Request $request
* @return \Illuminate\Http\Response|\Illuminate\Http\JsonResponse
*/
public function dispatch(Request $request)
{
$this->currentRequest = $request;
return $this->dispatchToRoute($request);
}
/**
* Dispatch the request to a route and return the response.
*
* @param \Illuminate\Http\Request $request
* @return mixed
*/
public function dispatchToRoute(Request $request)
{
return $this->runRoute($request, $this->findRoute($request));
}
/**
* Find the route matching a given request.
*
* @param \Illuminate\Http\Request $request
* @return \Illuminate\Routing\Route
*/
protected function findRoute($request)
{
$this->current = $route = $this->routes->match($request);
$this->container->instance(Route::class, $route);
return $route;
}
/**
* Return the response for the given route.
*
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
Route {#881}
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Routing
/Router.php
* @return mixed
*/
public function respondWithRoute($name)
{
$route = tap($this->routes->getByName($name))->bind($this->currentRequest);
return $this->runRoute($this->currentRequest, $route);
}
/**
* Dispatch the request to the application.
*
* @param \Illuminate\Http\Request $request
* @return \Illuminate\Http\Response|\Illuminate\Http\JsonResponse
*/
public function dispatch(Request $request)
{
$this->currentRequest = $request;
return $this->dispatchToRoute($request);
}
/**
* Dispatch the request to a route and return the response.
*
* @param \Illuminate\Http\Request $request
* @return mixed
*/
public function dispatchToRoute(Request $request)
{
return $this->runRoute($request, $this->findRoute($request));
}
/**
* Find the route matching a given request.
*
* @param \Illuminate\Http\Request $request
* @return \Illuminate\Routing\Route
*/
protected function findRoute($request)
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Foundation
/Http
/Kernel.php
* @return void
*/
public function bootstrap()
{
if (! $this->app->hasBeenBootstrapped()) {
$this->app->bootstrapWith($this->bootstrappers());
}
}
/**
* Get the route dispatcher callback.
*
* @return \Closure
*/
protected function dispatchToRouter()
{
return function ($request) {
$this->app->instance('request', $request);
return $this->router->dispatch($request);
};
}
/**
* Call the terminate method on any terminable middleware.
*
* @param \Illuminate\Http\Request $request
* @param \Illuminate\Http\Response $response
* @return void
*/
public function terminate($request, $response)
{
$this->terminateMiddleware($request, $response);
$this->app->terminate();
}
/**
* Call the terminate method on any terminable middleware.
*
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Routing
/Pipeline.php
use Symfony\Component\Debug\Exception\FatalThrowableError;
/**
* This extended pipeline catches any exceptions that occur during each slice.
*
* The exceptions are converted to HTTP responses for proper middleware handling.
*/
class Pipeline extends BasePipeline
{
/**
* Get the final piece of the Closure onion.
*
* @param \Closure $destination
* @return \Closure
*/
protected function prepareDestination(Closure $destination)
{
return function ($passable) use ($destination) {
try {
return $destination($passable);
} catch (Exception $e) {
return $this->handleException($passable, $e);
} catch (Throwable $e) {
return $this->handleException($passable, new FatalThrowableError($e));
}
};
}
/**
* Get a Closure that represents a slice of the application onion.
*
* @return \Closure
*/
protected function carry()
{
return function ($stack, $pipe) {
return function ($passable) use ($stack, $pipe) {
try {
$slice = parent::carry();
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
/www
/wwwroot
/dun
/vendor
/fideloper
/proxy
/src
/TrustProxies.php
{
$this->config = $config;
}
/**
* Handle an incoming request.
*
* @param \Illuminate\Http\Request $request
* @param \Closure $next
*
* @throws \Symfony\Component\HttpKernel\Exception\HttpException
*
* @return mixed
*/
public function handle($request, Closure $next)
{
$this->setTrustedProxyHeaderNames($request);
$this->setTrustedProxyIpAddresses($request);
return $next($request);
}
/**
* Sets the trusted proxies on the request to the value of trustedproxy.proxies
*
* @param \Illuminate\Http\Request $request
*/
protected function setTrustedProxyIpAddresses($request)
{
$trustedIps = $this->proxies ?: $this->config->get('trustedproxy.proxies');
// We only trust specific IP addresses
if (is_array($trustedIps)) {
return $this->setTrustedProxyIpAddressesToSpecificIps($request, $trustedIps);
}
// We trust any IP address that calls us, but not proxies further
// up the forwarding chain.
// TODO: Determine if this should only trust the first IP address
// Currently it trusts the entire chain (array of IPs),
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Pipeline
/Pipeline.php
// the appropriate method and arguments, returning the results back out.
return $pipe($passable, $stack);
} elseif (! is_object($pipe)) {
list($name, $parameters) = $this->parsePipeString($pipe);
// If the pipe is a string we will parse the string and resolve the class out
// of the dependency injection container. We can then build a callable and
// execute the pipe function giving in the parameters that are required.
$pipe = $this->getContainer()->make($name);
$parameters = array_merge([$passable, $stack], $parameters);
} else {
// If the pipe is already an object we'll just make a callable and pass it to
// the pipe as-is. There is no need to do any extra parsing and formatting
// since the object we're given was already a fully instantiated object.
$parameters = [$passable, $stack];
}
return method_exists($pipe, $this->method)
? $pipe->{$this->method}(...$parameters)
: $pipe(...$parameters);
};
};
}
/**
* Parse full pipe string to get name and parameters.
*
* @param string $pipe
* @return array
*/
protected function parsePipeString($pipe)
{
list($name, $parameters) = array_pad(explode(':', $pipe, 2), 2, []);
if (is_string($parameters)) {
$parameters = explode(',', $parameters);
}
return [$name, $parameters];
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
Closure {#215
class: "Illuminate\Routing\Pipeline"
this: Pipeline {#38 …}
parameters: {
$passable: {}
}
use: {
$destination: Closure {#217 …}
}
}
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Routing
/Pipeline.php
return $this->handleException($passable, new FatalThrowableError($e));
}
};
}
/**
* Get a Closure that represents a slice of the application onion.
*
* @return \Closure
*/
protected function carry()
{
return function ($stack, $pipe) {
return function ($passable) use ($stack, $pipe) {
try {
$slice = parent::carry();
$callable = $slice($stack, $pipe);
return $callable($passable);
} catch (Exception $e) {
return $this->handleException($passable, $e);
} catch (Throwable $e) {
return $this->handleException($passable, new FatalThrowableError($e));
}
};
};
}
/**
* Handle the given exception.
*
* @param mixed $passable
* @param \Exception $e
* @return mixed
*
* @throws \Exception
*/
protected function handleException($passable, Exception $e)
{
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Foundation
/Http
/Middleware
/TransformsRequest.php
* The additional attributes passed to the middleware.
*
* @var array
*/
protected $attributes = [];
/**
* Handle an incoming request.
*
* @param \Illuminate\Http\Request $request
* @param \Closure $next
* @return mixed
*/
public function handle($request, Closure $next, ...$attributes)
{
$this->attributes = $attributes;
$this->clean($request);
return $next($request);
}
/**
* Clean the request's data.
*
* @param \Illuminate\Http\Request $request
* @return void
*/
protected function clean($request)
{
$this->cleanParameterBag($request->query);
if ($request->isJson()) {
$this->cleanParameterBag($request->json());
} else {
$this->cleanParameterBag($request->request);
}
}
/**
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Pipeline
/Pipeline.php
// the appropriate method and arguments, returning the results back out.
return $pipe($passable, $stack);
} elseif (! is_object($pipe)) {
list($name, $parameters) = $this->parsePipeString($pipe);
// If the pipe is a string we will parse the string and resolve the class out
// of the dependency injection container. We can then build a callable and
// execute the pipe function giving in the parameters that are required.
$pipe = $this->getContainer()->make($name);
$parameters = array_merge([$passable, $stack], $parameters);
} else {
// If the pipe is already an object we'll just make a callable and pass it to
// the pipe as-is. There is no need to do any extra parsing and formatting
// since the object we're given was already a fully instantiated object.
$parameters = [$passable, $stack];
}
return method_exists($pipe, $this->method)
? $pipe->{$this->method}(...$parameters)
: $pipe(...$parameters);
};
};
}
/**
* Parse full pipe string to get name and parameters.
*
* @param string $pipe
* @return array
*/
protected function parsePipeString($pipe)
{
list($name, $parameters) = array_pad(explode(':', $pipe, 2), 2, []);
if (is_string($parameters)) {
$parameters = explode(',', $parameters);
}
return [$name, $parameters];
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
Closure {#208
class: "Illuminate\Routing\Pipeline"
this: Pipeline {#38 …}
parameters: {
$passable: {}
}
use: {
$stack: Closure {#215 …}
$pipe: "App\Http\Middleware\TrustProxies"
}
}
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Routing
/Pipeline.php
return $this->handleException($passable, new FatalThrowableError($e));
}
};
}
/**
* Get a Closure that represents a slice of the application onion.
*
* @return \Closure
*/
protected function carry()
{
return function ($stack, $pipe) {
return function ($passable) use ($stack, $pipe) {
try {
$slice = parent::carry();
$callable = $slice($stack, $pipe);
return $callable($passable);
} catch (Exception $e) {
return $this->handleException($passable, $e);
} catch (Throwable $e) {
return $this->handleException($passable, new FatalThrowableError($e));
}
};
};
}
/**
* Handle the given exception.
*
* @param mixed $passable
* @param \Exception $e
* @return mixed
*
* @throws \Exception
*/
protected function handleException($passable, Exception $e)
{
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Foundation
/Http
/Middleware
/TransformsRequest.php
* The additional attributes passed to the middleware.
*
* @var array
*/
protected $attributes = [];
/**
* Handle an incoming request.
*
* @param \Illuminate\Http\Request $request
* @param \Closure $next
* @return mixed
*/
public function handle($request, Closure $next, ...$attributes)
{
$this->attributes = $attributes;
$this->clean($request);
return $next($request);
}
/**
* Clean the request's data.
*
* @param \Illuminate\Http\Request $request
* @return void
*/
protected function clean($request)
{
$this->cleanParameterBag($request->query);
if ($request->isJson()) {
$this->cleanParameterBag($request->json());
} else {
$this->cleanParameterBag($request->request);
}
}
/**
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Pipeline
/Pipeline.php
// the appropriate method and arguments, returning the results back out.
return $pipe($passable, $stack);
} elseif (! is_object($pipe)) {
list($name, $parameters) = $this->parsePipeString($pipe);
// If the pipe is a string we will parse the string and resolve the class out
// of the dependency injection container. We can then build a callable and
// execute the pipe function giving in the parameters that are required.
$pipe = $this->getContainer()->make($name);
$parameters = array_merge([$passable, $stack], $parameters);
} else {
// If the pipe is already an object we'll just make a callable and pass it to
// the pipe as-is. There is no need to do any extra parsing and formatting
// since the object we're given was already a fully instantiated object.
$parameters = [$passable, $stack];
}
return method_exists($pipe, $this->method)
? $pipe->{$this->method}(...$parameters)
: $pipe(...$parameters);
};
};
}
/**
* Parse full pipe string to get name and parameters.
*
* @param string $pipe
* @return array
*/
protected function parsePipeString($pipe)
{
list($name, $parameters) = array_pad(explode(':', $pipe, 2), 2, []);
if (is_string($parameters)) {
$parameters = explode(',', $parameters);
}
return [$name, $parameters];
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
Closure {#175
class: "Illuminate\Routing\Pipeline"
this: Pipeline {#38 …}
parameters: {
$passable: {}
}
use: {
$stack: Closure {#208 …}
$pipe: "Illuminate\Foundation\Http\Middleware\ConvertEmptyStringsToNull"
}
}
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Routing
/Pipeline.php
return $this->handleException($passable, new FatalThrowableError($e));
}
};
}
/**
* Get a Closure that represents a slice of the application onion.
*
* @return \Closure
*/
protected function carry()
{
return function ($stack, $pipe) {
return function ($passable) use ($stack, $pipe) {
try {
$slice = parent::carry();
$callable = $slice($stack, $pipe);
return $callable($passable);
} catch (Exception $e) {
return $this->handleException($passable, $e);
} catch (Throwable $e) {
return $this->handleException($passable, new FatalThrowableError($e));
}
};
};
}
/**
* Handle the given exception.
*
* @param mixed $passable
* @param \Exception $e
* @return mixed
*
* @throws \Exception
*/
protected function handleException($passable, Exception $e)
{
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Foundation
/Http
/Middleware
/ValidatePostSize.php
class ValidatePostSize
{
/**
* Handle an incoming request.
*
* @param \Illuminate\Http\Request $request
* @param \Closure $next
* @return mixed
*
* @throws \Illuminate\Http\Exceptions\PostTooLargeException
*/
public function handle($request, Closure $next)
{
$max = $this->getPostMaxSize();
if ($max > 0 && $request->server('CONTENT_LENGTH') > $max) {
throw new PostTooLargeException;
}
return $next($request);
}
/**
* Determine the server 'post_max_size' as bytes.
*
* @return int
*/
protected function getPostMaxSize()
{
if (is_numeric($postMaxSize = ini_get('post_max_size'))) {
return (int) $postMaxSize;
}
$metric = strtoupper(substr($postMaxSize, -1));
$postMaxSize = (int) $postMaxSize;
switch ($metric) {
case 'K':
return $postMaxSize * 1024;
case 'M':
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Pipeline
/Pipeline.php
// the appropriate method and arguments, returning the results back out.
return $pipe($passable, $stack);
} elseif (! is_object($pipe)) {
list($name, $parameters) = $this->parsePipeString($pipe);
// If the pipe is a string we will parse the string and resolve the class out
// of the dependency injection container. We can then build a callable and
// execute the pipe function giving in the parameters that are required.
$pipe = $this->getContainer()->make($name);
$parameters = array_merge([$passable, $stack], $parameters);
} else {
// If the pipe is already an object we'll just make a callable and pass it to
// the pipe as-is. There is no need to do any extra parsing and formatting
// since the object we're given was already a fully instantiated object.
$parameters = [$passable, $stack];
}
return method_exists($pipe, $this->method)
? $pipe->{$this->method}(...$parameters)
: $pipe(...$parameters);
};
};
}
/**
* Parse full pipe string to get name and parameters.
*
* @param string $pipe
* @return array
*/
protected function parsePipeString($pipe)
{
list($name, $parameters) = array_pad(explode(':', $pipe, 2), 2, []);
if (is_string($parameters)) {
$parameters = explode(',', $parameters);
}
return [$name, $parameters];
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
Closure {#174
class: "Illuminate\Routing\Pipeline"
this: Pipeline {#38 …}
parameters: {
$passable: {}
}
use: {
$stack: Closure {#175 …}
$pipe: "App\Http\Middleware\TrimStrings"
}
}
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Routing
/Pipeline.php
return $this->handleException($passable, new FatalThrowableError($e));
}
};
}
/**
* Get a Closure that represents a slice of the application onion.
*
* @return \Closure
*/
protected function carry()
{
return function ($stack, $pipe) {
return function ($passable) use ($stack, $pipe) {
try {
$slice = parent::carry();
$callable = $slice($stack, $pipe);
return $callable($passable);
} catch (Exception $e) {
return $this->handleException($passable, $e);
} catch (Throwable $e) {
return $this->handleException($passable, new FatalThrowableError($e));
}
};
};
}
/**
* Handle the given exception.
*
* @param mixed $passable
* @param \Exception $e
* @return mixed
*
* @throws \Exception
*/
protected function handleException($passable, Exception $e)
{
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Foundation
/Http
/Middleware
/CheckForMaintenanceMode.php
}
/**
* Handle an incoming request.
*
* @param \Illuminate\Http\Request $request
* @param \Closure $next
* @return mixed
*
* @throws \Symfony\Component\HttpKernel\Exception\HttpException
*/
public function handle($request, Closure $next)
{
if ($this->app->isDownForMaintenance()) {
$data = json_decode(file_get_contents($this->app->storagePath().'/framework/down'), true);
throw new MaintenanceModeException($data['time'], $data['retry'], $data['message']);
}
return $next($request);
}
}
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Pipeline
/Pipeline.php
// the appropriate method and arguments, returning the results back out.
return $pipe($passable, $stack);
} elseif (! is_object($pipe)) {
list($name, $parameters) = $this->parsePipeString($pipe);
// If the pipe is a string we will parse the string and resolve the class out
// of the dependency injection container. We can then build a callable and
// execute the pipe function giving in the parameters that are required.
$pipe = $this->getContainer()->make($name);
$parameters = array_merge([$passable, $stack], $parameters);
} else {
// If the pipe is already an object we'll just make a callable and pass it to
// the pipe as-is. There is no need to do any extra parsing and formatting
// since the object we're given was already a fully instantiated object.
$parameters = [$passable, $stack];
}
return method_exists($pipe, $this->method)
? $pipe->{$this->method}(...$parameters)
: $pipe(...$parameters);
};
};
}
/**
* Parse full pipe string to get name and parameters.
*
* @param string $pipe
* @return array
*/
protected function parsePipeString($pipe)
{
list($name, $parameters) = array_pad(explode(':', $pipe, 2), 2, []);
if (is_string($parameters)) {
$parameters = explode(',', $parameters);
}
return [$name, $parameters];
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
Closure {#173
class: "Illuminate\Routing\Pipeline"
this: Pipeline {#38 …}
parameters: {
$passable: {}
}
use: {
$stack: Closure {#174 …}
$pipe: "Illuminate\Foundation\Http\Middleware\ValidatePostSize"
}
}
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Routing
/Pipeline.php
return $this->handleException($passable, new FatalThrowableError($e));
}
};
}
/**
* Get a Closure that represents a slice of the application onion.
*
* @return \Closure
*/
protected function carry()
{
return function ($stack, $pipe) {
return function ($passable) use ($stack, $pipe) {
try {
$slice = parent::carry();
$callable = $slice($stack, $pipe);
return $callable($passable);
} catch (Exception $e) {
return $this->handleException($passable, $e);
} catch (Throwable $e) {
return $this->handleException($passable, new FatalThrowableError($e));
}
};
};
}
/**
* Handle the given exception.
*
* @param mixed $passable
* @param \Exception $e
* @return mixed
*
* @throws \Exception
*/
protected function handleException($passable, Exception $e)
{
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
/www
/wwwroot
/dun
/vendor
/dingo
/api
/src
/Http
/Middleware
/Request.php
{
try {
if ($this->validator->validateRequest($request)) {
$this->app->singleton(LaravelExceptionHandler::class, function ($app) {
return $app[ExceptionHandler::class];
});
$request = $this->app->make(RequestContract::class)->createFromIlluminate($request);
$this->events->fire(new RequestWasMatched($request, $this->app));
return $this->sendRequestThroughRouter($request);
}
} catch (Exception $exception) {
$this->exception->report($exception);
return $this->exception->handle($exception);
}
return $next($request);
}
/**
* Send the request through the Dingo router.
*
* @param \Dingo\Api\Http\Request $request
*
* @return \Dingo\Api\Http\Response
*/
protected function sendRequestThroughRouter(HttpRequest $request)
{
$this->app->instance('request', $request);
return (new Pipeline($this->app))->send($request)->through($this->middleware)->then(function ($request) {
return $this->router->dispatch($request);
});
}
/**
* Call the terminate method on middlewares.
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Pipeline
/Pipeline.php
// the appropriate method and arguments, returning the results back out.
return $pipe($passable, $stack);
} elseif (! is_object($pipe)) {
list($name, $parameters) = $this->parsePipeString($pipe);
// If the pipe is a string we will parse the string and resolve the class out
// of the dependency injection container. We can then build a callable and
// execute the pipe function giving in the parameters that are required.
$pipe = $this->getContainer()->make($name);
$parameters = array_merge([$passable, $stack], $parameters);
} else {
// If the pipe is already an object we'll just make a callable and pass it to
// the pipe as-is. There is no need to do any extra parsing and formatting
// since the object we're given was already a fully instantiated object.
$parameters = [$passable, $stack];
}
return method_exists($pipe, $this->method)
? $pipe->{$this->method}(...$parameters)
: $pipe(...$parameters);
};
};
}
/**
* Parse full pipe string to get name and parameters.
*
* @param string $pipe
* @return array
*/
protected function parsePipeString($pipe)
{
list($name, $parameters) = array_pad(explode(':', $pipe, 2), 2, []);
if (is_string($parameters)) {
$parameters = explode(',', $parameters);
}
return [$name, $parameters];
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
Closure {#170
class: "Illuminate\Routing\Pipeline"
this: Pipeline {#38 …}
parameters: {
$passable: {}
}
use: {
$stack: Closure {#173 …}
$pipe: "Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode"
}
}
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Routing
/Pipeline.php
return $this->handleException($passable, new FatalThrowableError($e));
}
};
}
/**
* Get a Closure that represents a slice of the application onion.
*
* @return \Closure
*/
protected function carry()
{
return function ($stack, $pipe) {
return function ($passable) use ($stack, $pipe) {
try {
$slice = parent::carry();
$callable = $slice($stack, $pipe);
return $callable($passable);
} catch (Exception $e) {
return $this->handleException($passable, $e);
} catch (Throwable $e) {
return $this->handleException($passable, new FatalThrowableError($e));
}
};
};
}
/**
* Handle the given exception.
*
* @param mixed $passable
* @param \Exception $e
* @return mixed
*
* @throws \Exception
*/
protected function handleException($passable, Exception $e)
{
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Pipeline
/Pipeline.php
public function via($method)
{
$this->method = $method;
return $this;
}
/**
* Run the pipeline with a final destination callback.
*
* @param \Closure $destination
* @return mixed
*/
public function then(Closure $destination)
{
$pipeline = array_reduce(
array_reverse($this->pipes), $this->carry(), $this->prepareDestination($destination)
);
return $pipeline($this->passable);
}
/**
* Get the final piece of the Closure onion.
*
* @param \Closure $destination
* @return \Closure
*/
protected function prepareDestination(Closure $destination)
{
return function ($passable) use ($destination) {
return $destination($passable);
};
}
/**
* Get a Closure that represents a slice of the application onion.
*
* @return \Closure
*/
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Foundation
/Http
/Kernel.php
}
/**
* Send the given request through the middleware / router.
*
* @param \Illuminate\Http\Request $request
* @return \Illuminate\Http\Response
*/
protected function sendRequestThroughRouter($request)
{
$this->app->instance('request', $request);
Facade::clearResolvedInstance('request');
$this->bootstrap();
return (new Pipeline($this->app))
->send($request)
->through($this->app->shouldSkipMiddleware() ? [] : $this->middleware)
->then($this->dispatchToRouter());
}
/**
* Bootstrap the application for HTTP requests.
*
* @return void
*/
public function bootstrap()
{
if (! $this->app->hasBeenBootstrapped()) {
$this->app->bootstrapWith($this->bootstrappers());
}
}
/**
* Get the route dispatcher callback.
*
* @return \Closure
*/
protected function dispatchToRouter()
Arguments
Closure {#217
class: "Illuminate\Foundation\Http\Kernel"
this: Kernel {#29 …}
parameters: {
$request: {}
}
}
/www
/wwwroot
/dun
/vendor
/laravel
/framework
/src
/Illuminate
/Foundation
/Http
/Kernel.php
$router->middlewareGroup($key, $middleware);
}
foreach ($this->routeMiddleware as $key => $middleware) {
$router->aliasMiddleware($key, $middleware);
}
}
/**
* Handle an incoming HTTP request.
*
* @param \Illuminate\Http\Request $request
* @return \Illuminate\Http\Response
*/
public function handle($request)
{
try {
$request->enableHttpMethodParameterOverride();
$response = $this->sendRequestThroughRouter($request);
} catch (Exception $e) {
$this->reportException($e);
$response = $this->renderException($request, $e);
} catch (Throwable $e) {
$this->reportException($e = new FatalThrowableError($e));
$response = $this->renderException($request, $e);
}
$this->app['events']->dispatch(
new Events\RequestHandled($request, $response)
);
return $response;
}
/**
* Send the given request through the middleware / router.
*
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}
/www
/wwwroot
/dun
/public
/index.php
*/
$app = require_once __DIR__.'/../bootstrap/app.php';
/*
|--------------------------------------------------------------------------
| Run The Application
|--------------------------------------------------------------------------
|
| Once we have the application, we can handle the incoming request
| through the kernel, and send the associated response back to
| the client's browser allowing them to enjoy the creative
| and wonderful application we have prepared for them.
|
*/
$kernel = $app->make(Illuminate\Contracts\Http\Kernel::class);
$response = $kernel->handle(
$request = Illuminate\Http\Request::capture()
);
$response->send();
$kernel->terminate($request, $response);
?>
Arguments
Request {#42
#json: null
#convertedFiles: null
#userResolver: Closure {#1038
class: "Illuminate\Auth\AuthServiceProvider"
this: AuthServiceProvider {#33 …}
parameters: {
$guard: {
default: null
}
}
use: {
$app: Application {#2 …}
}
}
#routeResolver: Closure {#1040
class: "Illuminate\Routing\Router"
this: Router {#25 …}
use: {
$route: Route {#881 …}
}
}
+attributes: ParameterBag {#44}
+request: ParameterBag {#50}
+query: ParameterBag {#50}
+server: ServerBag {#46}
+files: FileBag {#47}
+cookies: ParameterBag {#45}
+headers: HeaderBag {#48}
#content: null
#languages: null
#charsets: null
#encodings: null
#acceptableContentTypes: array:1 [
0 => "*/*"
]
#pathInfo: "/article_view/262.html"
#requestUri: "/article_view/262.html"
#baseUrl: ""
#basePath: null
#method: "GET"
#format: null
#session: Store {#1470}
#locale: null
#defaultLocale: "en"
-isHostValid: true
-isForwardedValid: true
basePath: ""
format: "html"
}