48 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			PHP
		
	
	
		
			Executable File
		
	
			
		
		
	
	
			48 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			PHP
		
	
	
		
			Executable File
		
	
<?php
 | 
						|
 | 
						|
 | 
						|
namespace app\controller\en;
 | 
						|
 | 
						|
 | 
						|
class Error extends BaseController
 | 
						|
{
 | 
						|
    public function __call($method, $args)
 | 
						|
    {
 | 
						|
        if(request()->isAjax()) {
 | 
						|
            return $this->json(404, 'error request!');
 | 
						|
        } else {
 | 
						|
            $referer = $_SERVER['HTTP_REFERER'] ?? null;
 | 
						|
            if (empty($referer)) {
 | 
						|
                $url = '/';
 | 
						|
            } else {
 | 
						|
                $domain = $this->request->domain();
 | 
						|
                $urlInfo = parse_url($referer);
 | 
						|
                $scheme = $urlInfo['scheme'] ?? '';
 | 
						|
                $requestSrc = '';
 | 
						|
                if (!empty($scheme)) {
 | 
						|
                    $requestSrc = $scheme.'://'.($urlInfo['host'] ?? '');
 | 
						|
                }
 | 
						|
                if($domain != $requestSrc) {
 | 
						|
                    $url = '/';
 | 
						|
                } else {
 | 
						|
                    $url = 'javascript:history.back(-1);';
 | 
						|
                }
 | 
						|
            }
 | 
						|
            $result = [
 | 
						|
                'code' => 404,
 | 
						|
                'msg'  => 'Invalid request! No related resources found.',
 | 
						|
                'data' => [],
 | 
						|
                'url'  => $url,
 | 
						|
                'wait' => 5,
 | 
						|
            ];
 | 
						|
            return view('en/error/400')->assign($result);
 | 
						|
        }
 | 
						|
    }
 | 
						|
 | 
						|
 | 
						|
    public function jump()
 | 
						|
    {
 | 
						|
        $param = request()->param();
 | 
						|
        return view()->assign($param);
 | 
						|
    }
 | 
						|
} |