簡體   English   中英

/ 登錄 Laravel 中的 404 錯誤

[英]404 error in / login Laravel

我將在 Laravel 中制作的網頁遷移到服務器女巫 Cpanel,除 /login 等身份驗證外,所有路由都可以正常工作。 當您嘗試輸入那里的路線時,它會出現 404 錯誤。 這是頁面: http : //elgloborojocatalogos.com.mx/

我的路線是:

<?php

Auth::routes();

// Routes or function calls for this project.
Route::get('/', 'GlobosController@catalogo');

Route::get('globos',['uses' =>'GlobosController@index']);

Route::post('globos/store',['uses' =>'GlobosController@store'])->middleware('auth');

Route::get('globos/retrieveall',['uses' => 'GlobosController@retrieveAll'])->middleware('auth');

Route::get('globos/retrieve/{no_pages}',['uses'=> 'GlobosController@retrieve'])->middleware('auth');

Route::get('globos/pages',['uses'=>'GlobosController@pages'])->middleware('auth');

Route::get('globos/pagesp/{type}', ['uses' =>'GlobosController@pagesp'])->middleware('auth');   

Route::get('/home', function(){ return redirect('globos/pages');});

Route::delete('globos/deleteGlobo/{id}', ['uses' =>'GlobosController@deleteGlobo'])->middleware('auth');

Route::post('globos/findGlobo',['uses'=>'GlobosController@findGlobo'])->middleware('auth');

Route::get('globos/imprimirCatalogo',['uses'=>'GlobosController@imprimirCatalogo'])->middleware('auth');

//Users
// Authentication Routes...
Route::get('login', 'Auth\LoginController@showLoginForm');
Route::post('login', 'Auth\LoginController@login');
Route::post('logout', 'Auth\LoginController@logout');

您正在嘗試訪問http://elgloborojocatalogos.com.mx/login ,但它顯示找不到文件。 這很明顯,因為您在登錄之前缺少 index.php,如下所示

http://elgloborojocatalogos.com.mx/index.php/login

現在它可以解決問題,但它看起來很丑。 因此,要刪除 index.php,您需要在 public_html 文件夾中添加一個 .htaccess 文件,該文件夾是根目錄。 因此,只需創建一個文件並將其命名為.htaccess並將以下代碼行復制粘貼到該文件中。

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase //
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)$ index.php?$1 [L]
</IfModule>

它現在應該按預期工作

您的大部分路線都給了我們 404,例如:

在此處輸入圖片說明

沒有中間件的事件/globos 因此,我必須假設我們不會尋找與您在開發環境中使用的應用程序相同的應用程序。 你上傳正確了嗎?

如果這只是一個身份驗證問題,像/globos/pages這樣的/globos/pages應該將我們重定向到身份驗證,但這不會發生,所以這是一個一般的路由問題。

還有Auth::routes(); 應該給你登錄,注銷和注冊,所以你不需要創建任何其他登錄路由,或者,你可以刪除那個Auth::routes(); 線。

請按照此處的回答更改.htaccesshttps : //stackoverflow.com/a/46647507/1093811

下面也適用於 Laravel 簽名的 URL。

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

    RewriteEngine On

    # Redirect Trailing Slashes...
    RewriteRule ^(.*)/$ /$1 [L,R=301]

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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM