2017-01-17 9 views
0

私はlaravelを学び始めています。私はこの回答を全部見てきました。私はチュートリアルのステップを踏んでそれを始めることにしていました。私はそれを歓迎画面で実行しましたが、私がログインをクリックするか登録すると、ファイルが存在しないことが示されます。しかし、もし私がルートを作ったら。Laravel 5.3ログインページが見つかりません

Route::get('/', function() { 
    return view('auth/login'); 
}); 

ページを見つけて表示します。

ここにログインページへのリンクがあります。私は/認証/ログインしようとしているのhrefタグで

<div class="panel panel-success"> 
      <div class="panel-heading">List of Game of Thrones Characters</div> 

       @if(Auth::check()) 
        <p>Success</p> 
       @endif 


     </div> 
     <?php 
      echo getcwd() . "\n"; 
     ?> 

     @if(Auth::guest()) 
      <a href="/login" class="btn btn-info"> You need to login to see the list >></a> 
     @endif 

、/ログイン、および任意のコンボはあなたが試すことができ、それがどんなファイルが見つからないことはありません。私がこれを働かせようとしている道はここにあります。

Route::get('/login', function() { 
    return view('auth/login'); 
} 

誰もこのisntの動作を説明できますか?私はどこからでも見てきましたが、これを呼び出す正しい方法と思われます。私はちょうど始めのテンプレートが動作するようになったことを忘れないでください。

+0

アンカータグを 'index.php/login'に変更すると機能しますか?そうであれば、すべてのリクエストを 'index.php'に書き換えるURL書き換えをセットアップする必要があります。 – BrokenBinary

+0

閉じ括弧とセミコロンを追加することを忘れましたか? ');' – Paras

+0

うんうんうん!それをどうやってやりますか? –

答えて

2

ウェブサーバーのWebサーバーの書き換えを設定する必要があります。

これを処理する最も簡単な方法は、public/ディレクトリに.htaccessというファイルを使用することです。

<IfModule mod_rewrite.c> 
    <IfModule mod_negotiation.c> 
     Options -MultiViews 
    </IfModule> 

    RewriteEngine On 

    # Redirect Trailing Slashes If Not A Folder... 
    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteRule ^(.*)/$ /$1 [L,R=301] 

    # Handle Front Controller... 
    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteRule^index.php [L] 

    # Handle Authorization Header 
    RewriteCond %{HTTP:Authorization} . 
    RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] 
</IfModule> 

あなたはまた、mod_rewrite Apacheモジュールが有効になっていることを確認する必要があります。これはLaravel 5.3のデフォルト.htaccessファイルです。モジュールを有効にしてApacheを再起動するには、次の2つのコマンドを実行します:

a2enmod rewrite 
service apache2 restart 
+0

Apacheの書き換えも有効にする必要がありました。ありがとうございました –

関連する問題