diff --git a/web/pages/messages/[channelId].tsx b/web/pages/messages/[channelId].tsx
index 489d0722..2ac1483f 100644
--- a/web/pages/messages/[channelId].tsx
+++ b/web/pages/messages/[channelId].tsx
@@ -50,6 +50,10 @@ export default function PrivateMessagesPage() {
const { channelId: channelIdString } = router.query as { channelId: string }
const channelId = router.isReady ? parseInt(channelIdString) : undefined
const user = useUser()
+ if (user === null) {
+ router.replace(`/signin?returnTo=${encodeURIComponent('/messages')}`)
+ return
+ }
return (
{router.isReady && channelId && user ? (