【问题标题】:Laravel 7 Auth not working on hosted siteLaravel 7 Auth 在托管站点上不起作用
【发布时间】:2023-03-27 19:23:01
【问题描述】:

所以我正在尝试将 Laravel 站点部署到 bluehost,但是在成功登录后应该重定向到“/home”并停止。相反,它会尝试重定向到“/home”,然后重定向到“/login”。使用相同数据库在 localhost 上运行的相同代码可以正常工作。其他数据库操作正常。

基本上默认的身份验证中间件似乎以某种方式损坏。

我使用 laravel 的内置 auth 进行身份验证。 这是现场直播:

登录控制器.php

<?php

namespace App\Http\Controllers\Auth;

use App\Http\Controllers\Controller;
use Illuminate\Foundation\Auth\AuthenticatesUsers;

class LoginController extends Controller
{

    use AuthenticatesUsers;

    /**
     * Where to redirect users after login.
     *
     * @var string
     */
    protected $redirectTo = '/home';

    /**
     * Create a new controller instance.
     *
     * @return void
     */
    public function __construct()
    {
        $this->middleware('guest')->except('logout');
    }
}

web.php

<?php

use Illuminate\Support\Facades\Route;
use Illuminate\Support\Facades\Auth;

Route::get('/', 'WelcomeController@index')->name('welcome');

Auth::routes();
// Home
Route::get('/home', 'HomeController@index')->name('home');

//Listings
Route::get('/listings/search', 'ListingController@search')->name('search-listings');

Route::get('/listings/delete/{listing}', 'ListingController@destroy')->name('listing-delete');

Route::resource('listings', 'ListingController');


Route::group(['prefix' => 'messages'], function () {
  Route::get('/', ['as' => 'messages', 'uses' => 'MessageController@index']);
  Route::get('create', ['as' => 'messages.create', 'uses' => 'MessageController@create']);
  Route::post('/', ['as' => 'messages.store', 'uses' => 'MessageController@store']);
  Route::get('{id}', ['as' => 'messages.show', 'uses' => 'MessageController@show']);
  Route::put('/', ['as' => 'messages.update', 'uses' => 'MessageController@update']);
  Route::delete('/', ['as' => 'messages.action', 'uses' => 'MessageController@action']);
});

【问题讨论】:

  • 有效。您刚刚在 App\Http\Controllers\LoginController.php 中添加了一些内容。打开该文件并检查你返回什么 null
  • 在现场工作?你能登录吗?我的 LoginController.php 不返回任何空值。任何进一步的解释都会很棒。我真的坚持这一点。
  • 抱歉,我不小心离开了 dd()。再看看我上面描述的行为。谢谢@АлександрИнженер
  • 你能输入你的loginControler 代码吗?和路由代码
  • 已添加。 @KamleshPaul

标签: php mysql laravel vue.js


【解决方案1】:

原来在我的 app/config 中的一个文件中的

几乎把我逼疯了。在本地主机上工作正常,但在服务器上却不行。如果您遇到此问题,请检查您的 .php 文件是否有文件开头的新行。

【讨论】:

    【解决方案2】:

    对我来说,删除 /bootstrap/cache 文件夹中的文件,除了 .gitignore 然后运行命令composer dumpautoload 工作

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-06-21
      • 2016-04-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-04-25
      相关资源
      最近更新 更多