Be part of JetBrains PHPverse 2026 on June 9 – a free online event bringing PHP devs worldwide together.

TheDoubleFF's avatar

Mail verification in Jetstream

Hi

I am trying to implement Email verification in Jetstream. I followed the documents to enable this. At the moment, I am getting the emails out to my log. However, when I try to verify the email, I always get a "403 INVALID SIGNATURE". I am running this locally

Any ideas on how to solve this? I noticed there were some equal signs there that maybe were not supposed to be there, but removing them does not fix the issue.

Verification link comes out as below:

If you're having trouble clicking the "Verify Em= ail Address" button, copy and paste the URL below into your web browser: = [http://showit2/email/verify/2/851930ec71ff24c792d22f76186c728c8e9d44d1?exp= ires=3D1653842601&signature=3D3e678adf28dd8647b36bc16e112885c2f4c2da5711123= 085b52a7ce6b1476e73](http://showit2/email/verify/2/851930ec71ff24c792d22f76= 186c728c8e9d44d1?expires=3D1653842601&signature=3D3e678adf28dd8647b36bc16e1= 12885c2f4c2da5711123085b52a7ce6b1476e73)

0 likes
2 replies
muriloht's avatar

Hello c:

Did you try to follow the entire link including its queries? Try copy and pasting the entire URL link in your browser.

These "and signs"(&), question mark(?) and equal signs (=) compose the query string which is part of the URL format. Sometimes when we click in a URL highlighted by any program, these programs may have some trouble intepreting these special characters and end up splitting a given URL and its query string in multiple parts, breaking down the link.

In your case, you will need to resend the verification email to get a new URL, since the default behavior of Laravel Jetstream is to expire them after a while.

Snapey's avatar

you are seeing the raw email in your logs

email uses = at the end of lines when the lines need to wrap, but your email client understands this and strips them out.

better to setup a free mailtrap account since this will present the email correctly

Please or to participate in this conversation.