diff --git a/app/controllers/admin/cache.php b/app/controllers/admin/cache.php
index 604718b35f173e878b622396f536be3a25f23e63..329aab7a968a1ce98ce8c2b55d588233ff4b575e 100644
--- a/app/controllers/admin/cache.php
+++ b/app/controllers/admin/cache.php
@@ -112,8 +112,6 @@ class Admin_CacheController extends AuthenticatedController
         if (Config::get()->store('SYSTEMCACHE', $settings)) {
             PageLayout::postSuccess(_('Die Einstellungen wurden gespeichert.'));
             StudipCacheFactory::unconfigure();
-        } else {
-            PageLayout::postError(_('Die Einstellungen konnten nicht gespeichert werden.'));
         }
 
         $this->relocate('admin/cache/settings');
diff --git a/lib/classes/StudipMemcachedCache.php b/lib/classes/StudipMemcachedCache.php
index 4b9b628c68b66ad91c37879095069e14b4e9842e..619a61ed91cd2880abcebd54fc210588687852b6 100644
--- a/lib/classes/StudipMemcachedCache.php
+++ b/lib/classes/StudipMemcachedCache.php
@@ -46,7 +46,7 @@ class StudipMemcachedCache implements StudipSystemCache
 
         if (count($this->memcache->getServerList()) === 0) {
             foreach ($servers as $server) {
-                $status = $this->memcache->addServer($server['hostname'], $server['port']);
+                $status = $this->memcache->addServer($server['hostname'], (int) $server['port']);
 
                 if (!$status) {
                     throw new Exception("Could not add server: {$server['hostname']} @ port {$server['port']}");
diff --git a/resources/vue/components/MemcachedCacheConfig.vue b/resources/vue/components/MemcachedCacheConfig.vue
index 84e8059d8655ddca2fcbafbd903464631d55179c..c2e46632f2372121a10082a748a94b5206793af0 100644
--- a/resources/vue/components/MemcachedCacheConfig.vue
+++ b/resources/vue/components/MemcachedCacheConfig.vue
@@ -46,13 +46,17 @@ export default {
     },
     methods: {
         addServer () {
-            this.serverConfig.push({ server: '', port: null })
+            this.serverConfig.push({ hostname: 'localhost', port: 11211 })
         },
         removeServer (event, index) {
             this.serverConfig.splice(index, 1)
         },
         isValid () {
-            return this.serverConfig.length > 0;
+            return this.serverConfig.length > 0
+                && this.serverConfig.every(server => {
+                    return server.hostname.length > 0
+                        && server.port > 0;
+                });
         }
     },
     watch: {