2016-08-03 1 views
2

Laravel 5.2의 모든 내 경로에 대해 상태 코드 503을 실행하고 싶습니다.laravel routes.php 파일이있는 모든 경로에 대해 503 상태를 실행하십시오.

'php artisan down'명령을 사용할 수 없습니다.

그래서 내 파일 routes.php에서 수동으로하고 싶습니다.

나는이 함께 노력하지만, 작동하지 않는 :

Route::any('/',function(){#this code not work for me 
    dd('not arrive here'); 
    return abort(503); 
}); 

이 전체 route.php 파일은 다음과 같습니다

<?php 


Route::any('/',function(){#this code not work for me 
    dd('not arrive here'); 
    return abort(503); 
}); 

// extra langs 
$conf = Config::get('app.current_site_config'); 
$langs = []; 
$langs[] = $conf['lng_default']; 

if (!empty($conf['lng_extra'])) 
    $langs = array_merge($conf['lng_extra'],$langs); 

$prefix = false; 

if (count($langs) > 1) 
    $prefix = true; 

$pages = Config::get('app.web_config.lang_url'); 

foreach($langs as $lang) 
{  
    foreach($pages as $key=>$value) 
    {  
     $key_underscored = str_replace('-','_',$key); 

     if ($prefix == false) 
     {   
      //echo $key_underscored.'_'.$lang.'<br>'; 
      Route::any('/'.$value[$lang],['as' => $key_underscored.'_'.$lang, 'uses' => '[email protected]'.$key_underscored ]);  
      Route::get('/'.$value[$lang].'/{seo_name}/{id}',['as' =>$key_underscored.'_seo_'.$lang, 'uses' => '[email protected]'.$key_underscored]); 
      Route::get('/404-error', ['as' => 'error404'.'_'.$lang, 'uses' => '[email protected]']); 
      Route::get('/500-error', ['as' => 'error500'.'_'.$lang, 'uses' => '[email protected]']); 
      Route::post('shipping-info-post', ['as' => 'shipping_info_post'.'_'.$lang, 'uses' => '[email protected]_info_post']); 
      Route::post('payment-post', ['as' => 'payment_post'.'_'.$lang, 'uses' => '[email protected]_post']); 
      Route::post('cart-post', ['as' => 'cart_post'.'_'.$lang, 'uses' => '[email protected]_post']); 
     } 
     else 
     { 
      //echo '/'.$lang.'/'.$value[$lang] . ' as '.$key_underscored.'_'.$lang.' uses '. 'W[email protected]'.$key_underscored.'<br>'; 
      Route::any('/'.$lang.'/'.$value[$lang],['as' => $key_underscored.'_'.$lang, 'uses' => '[email protected]'.$key_underscored]); 
      Route::get('/'.$lang.'/'.$value[$lang].'/{seo_name}/{id}',['as' =>$key_underscored.'_seo_'.$lang, 'uses' => '[email protected]'.$key_underscored]); 

      // generic (not optimized for SEO) 
      Route::get('/'.$lang.'/404-error', ['as' => 'error404_'.$lang, 'uses' => '[email protected]']); 
      Route::get('/'.$lang.'/500-error', ['as' => 'error500_'.$lang, 'uses' => '[email protected]']); 
      Route::post('/'.$lang.'/shipping-info-post', ['as' => 'shipping_info_post_'.$lang, 'uses' => '[email protected]_info_post']); 
      Route::post('/'.$lang.'/payment-post', ['as' => 'payment_post_'.$lang, 'uses' => '[email protected]_post']); 
      Route::post('/'.$lang.'/cart-post', ['as' => 'cart_post_'.$lang, 'uses' => '[email protected]_post']); 
     }  
    } 
} 

if (count($langs) > 1) 
{ 
    Route::get('/',function(){ 
     header('Location: '.route('index_'.Config::get('app.locale')).'/'); 
     exit; 
    }); 
} 
else 
    Route::get('/', ['as' => 'index_'.$langs[0], 'uses' => '[email protected]']); 

내 사이트의 모든 경로 위 (503) 상태를 시작할 수 있습니까?

답변

0

503을 반환하는 middleware을 작성하고 경로로 그룹으로 적용하십시오.

+0

은 어떻게 할 수 있습니까? –

+0

Laravel docs : 미들웨어.이 문제를 해결하려고 할 때 oyu에게 문제가 있는지 물어보십시오. – Vuldo

0

down이라는 빈 파일을 다음 폴더에 추가하기 만하면됩니다. /storage/framework/. php artisan down 무엇 기본적 것

/vendor/laravel/framework/src/Illuminate/Foundation/Console/DownCommand.php에서와 :

관련 문제