diff --git a/captcha.php b/captcha.php
index db93f84..89a9959 100644
--- a/captcha.php
+++ b/captcha.php
@@ -16,7 +16,8 @@
         $phraseBuilder = new PhraseBuilder($CAPTCHA_LENGTH);
         $builder = new CaptchaBuilder(null, $phraseBuilder);
         $builder->setDistortion(1);
-        $builder->buildAgainstOCR(250, 40);
+        if (isset($SIMPLECAPTCHA) && $SIMPLECAPTCHA) $builder->build(250, 40);
+        else $builder->buildAgainstOCR(250, 40);
         $_SESSION['captcha'] = $builder->getPhrase();
         $builder->output();
 }else echo "huh?";
diff --git a/config.php.example b/config.php.example
index f6a9df6..239056f 100755
--- a/config.php.example
+++ b/config.php.example
@@ -41,6 +41,9 @@
 ];
 $CAPTCHA_LENGTH = 5;
 
+// Use unsafe but easier captcha (no ocr testing)
+$SIMPLECAPTCHA = false;
+
 // not accept emails from
 $MAIL_HOST_BLACKLIST = ["mailinator.com"];
 // Use fallback_smtp directly for these hosts
@@ -68,7 +71,7 @@
         </body></html>"
 ];
 
-// url to redirect to after mail confirmation. Leave empty to none
+// url to redirect to after mail confirmation. It will be 5 seconds of delay. Leave empty to none
 $REDIRECT_TO = "";
 
 // displays php errors on the html page. Set to false for production
diff --git a/index.php b/index.php
index 06e93c0..cdc78ec 100755
--- a/index.php
+++ b/index.php
@@ -239,10 +239,9 @@
                 $token = $_GET["token"];
                 $user = redis_get($token);
                 if ($user){
-                    echo "<h1>Email Confirmation</h1>";
                     if (ldap_add_user($user)){
                         if ($REDIRECT_TO)
-                            header("Location: ".$REDIRECT_TO);
+                            header( "refresh:5;url=".$REDIRECT_TO);
 
                         $pending = redis_get("pending");
                         if ($pending){
@@ -253,8 +252,10 @@
                             }
                         }
                         redis_inc_ipdata(getClientIP(), "register");
+                        echo "<h1>Email Confirmation</h1>";
                         include "html/mail_confirmed.htm";
                     }else{
+                        echo "<h1>Email Confirmation</h1>";
                         include "html/registration_error.htm";
                     }
                     redis_delete($token);
