diff --git a/script/server b/script/server
index 0e748ef156f2aa571e09383151dc4c3d15e63a3e..9a6fb530d321656a65fd7852265a9f303895e063 100755
--- a/script/server
+++ b/script/server
@@ -70,15 +70,9 @@ function redis_config
     fi
 
     cp $redis_conf config/redis.conf
-    case $OS in
-    ## bsd sed doesn't seem to handle empty in-place edits correctly
-    *[Bb][Ss][Dd]*|Darwin)
-	    sed -i '' '/^[^#]*daemonize/s/yes/no/' config/redis.conf
-	    ;;
-    *)
-	    sed -i '/^[^#]*daemonize/s/yes/no/' config/redis.conf
-	    ;;
-    esac
+    sed -i -e '/^[^#]*daemonize/s/yes/no/'                               \
+           -e '/^[^#]*logfile/s|.*|logfile /var/log/diaspora/redis.log|' \
+        config/redis.conf
 }
 
 # Scan for -p, find out what port thin is about to use.