Laravel本地路由异常重定向至/login问题排查求助
Laravel本地Docker环境中/rfid-status路由始终重定向至/login问题
生产服务器上运行正常的Laravel网站,在本地Docker+Apache反向代理环境中,处理数据的公共路由/rfid-status访问时总是重定向至/login。尝试过多种搜索方案,也在路由上使用->withoutMiddleware()移除了所有中间件,但问题仍未解决,控制器的status方法从未执行(已在方法内添加die('test');验证)。
路由定义(web.php)
Route::match(['GET', 'POST'], '/rfid-status', [RFIDController::class, 'status']) ->withoutMiddleware(['api', 'csrf', 'auth', 'auth.basic', 'guest', 'throttle', 'sanctum']);
控制器方法(RFIDController.php)
function status(RFIDStatusRequest $request) { die('test'); }
请求类代码(RFIDStatusRequest.php)
<?php namespace App\Http\Requests; use Illuminate\Foundation\Http\FormRequest; class RFIDStatusRequest extends FormRequest { /** * Determine if the user is authorized to make this request. */ public function authorize(): bool { return true; } /** * Get the validation rules that apply to the request. * * @return array<string, \Illuminate\Contracts\Validation\ValidationRule|array<mixed>|string> */ public function rules(): array { return [ 'tag' => 'required|string|exists:rfids,rfid_unique_id|min:1', 'status' => 'required|in:available,missing', 'latitude' => 'required|decimal:1,12', 'longitude' => 'required|decimal:1,12', 'altitude' => 'required|integer', ]; } }
AppServiceProvider代码
<?php namespace App\Providers; use App\Services\RFIDService; use Illuminate\Support\Facades\Schema; use Illuminate\Support\ServiceProvider; use Illuminate\Support\Facades\URL; class AppServiceProvider extends ServiceProvider { /** * Register any application services. */ public function register(): void { $this->app->singleton(RFIDService::class); //$this->app['request']->server->set('HTTPS', true); } /** * Bootstrap any application services. */ public function boot(): void { Schema::defaultStringLength(191); //URL::forceScheme('https'); //URL::forceRootUrl(env('APP_URL')); } }
补充信息
执行命令 php artisan route:list --path=rfid-status 得到如下输出:
GET|POST|HEAD rfid-status ............ RFIDController@status
内容的提问来源于stack exchange,提问作者Petar Vasilev
相关产品推荐
相关产品推荐

