diff --git a/src/main/java/de/thm/arsnova/LoginController.java b/src/main/java/de/thm/arsnova/LoginController.java
index 011769f5c20498065c206bcdcd1abbc27b9b9f5d..aaca84f4877bd4608f0e207c9c9a498a129d17b3 100644
--- a/src/main/java/de/thm/arsnova/LoginController.java
+++ b/src/main/java/de/thm/arsnova/LoginController.java
@@ -115,12 +115,12 @@ public class LoginController {
 	}
 
 	@RequestMapping(method = RequestMethod.GET, value = "/logout")
-	public ModelAndView doLogout(final HttpServletRequest request) {
+	public View doLogout(final HttpServletRequest request) {
 		Authentication auth = SecurityContextHolder.getContext().getAuthentication();
 		request.getSession().invalidate();
 		if (auth instanceof CasAuthenticationToken) {
-			return new ModelAndView("redirect:/j_spring_cas_security_logout");
+			return new RedirectView("/j_spring_cas_security_logout");
 		}
-		return new ModelAndView("redirect:/");
+		return new RedirectView(request.getHeader("referer") != null ? request.getHeader("referer") : "/" );
 	}
 }
diff --git a/src/test/java/de/thm/arsnova/controller/LoginControllerTest.java b/src/test/java/de/thm/arsnova/controller/LoginControllerTest.java
index 3c1e97a4ba7c9d99ec0bd34b3d3d4f28f9c666d4..8f771dbf72e1bdd1931916cee0bfb59341771a06 100644
--- a/src/test/java/de/thm/arsnova/controller/LoginControllerTest.java
+++ b/src/test/java/de/thm/arsnova/controller/LoginControllerTest.java
@@ -92,4 +92,27 @@ public class LoginControllerTest extends AbstractSpringContextTestBase {
 		assertEquals("Guest1234567890", ((User)mav.getModel().get("user")).getUsername());
 	}
 
+	@Test
+	public void testLogoutWithoutRedirect() throws Exception {
+		request.setMethod("GET");
+		request.setRequestURI("/logout");
+		final ModelAndView mav = handle(request, response);
+		assertNotNull(mav);
+		assertNotNull(mav.getView());
+		RedirectView view = (RedirectView) mav.getView();
+		assertEquals("/", view.getUrl());
+	}
+	
+	@Test
+	public void testLogoutWithRedirect() throws Exception {
+		request.setMethod("GET");
+		request.setRequestURI("/logout");
+		request.addHeader("referer", "/dojo-index.html");
+
+		final ModelAndView mav = handle(request, response);
+		assertNotNull(mav);
+		assertNotNull(mav.getView());
+		RedirectView view = (RedirectView) mav.getView();
+		assertEquals("/dojo-index.html", view.getUrl());
+	}
 }