diff --git a/django/website/tabbed_page/urls.py b/django/website/tabbed_page/urls.py
index 58eae80928ebd4202d6b541b7947b1fc018406d9..883261c485a4faa128e917ba9efdfe3899445f18 100644
--- a/django/website/tabbed_page/urls.py
+++ b/django/website/tabbed_page/urls.py
@@ -4,7 +4,9 @@ from django.contrib.auth.decorators import login_required
 from .views import TabbedPageView
 
 urlpatterns = [
-    url(r'^(?P<name>[^/]*)(/(?P<tab_name>.*))?$',
-        TabbedPageView.as_view(),
+    url(r'^/$', login_required(TabbedPageView.as_view())),
+    url(r'^(?P<name>\w+)/$', login_required(TabbedPageView.as_view())),
+    url(r'^(?P<name>\w+)/(?P<tab_name>\w+)/$',
+        login_required(TabbedPageView.as_view()),
         name='tabbed-page')
 ]