<?php
namespace App\Http\Middleware;
use Closure;
use Illuminate\Http\Request;
use Illuminate\Support\Str;
use Symfony\Component\HttpFoundation\Response;
class UriIsGone
{
public function handle(Request $request, Closure $next): Response
{
if (Str::contains(request()->getRequestUri(), '?')) {
return \response("Gone error", 410);
}
return $next($request);
}
}
<?php
namespace App\Jobs;
use Illuminate\Queue\Middleware\WithoutOverlapping;
trait WithoutOverlappingFileWrite
{
public function middleware(): array
{
return [
(new WithoutOverlapping('file_write'))
->shared() // https://laravel.com/docs/11.x/queues#sharing-lock-keys
];
}
public function retryUntil(): \Illuminate\Support\Carbon
{
return now()->addSeconds(60);
}
}