diff --git a/ffserver.c b/ffserver.c
index 20ba890e4dde5c695dea096b5afe157c9c8a6e46..74bce851b95170aff10eab2aca33d2f690010b25 100644
--- a/ffserver.c
+++ b/ffserver.c
@@ -3199,7 +3199,7 @@ static HTTPContext *find_rtp_session_with_url(const char *url,
     char path1[1024];
     const char *path;
     char buf[1024];
-    int s;
+    int s, len;
 
     rtp_c = find_rtp_session(session_id);
     if (!rtp_c)
@@ -3219,6 +3219,10 @@ static HTTPContext *find_rtp_session_with_url(const char *url,
         return rtp_c;
       }
     }
+    len = strlen(path);
+    if (len > 0 && path[len - 1] == '/' &&
+        !strncmp(path, rtp_c->stream->filename, len - 1))
+        return rtp_c;
     return NULL;
 }