diff --git a/Keter/Proxy.hs b/Keter/Proxy.hs
--- a/Keter/Proxy.hs
+++ b/Keter/Proxy.hs
@@ -94,8 +94,17 @@
 
     processHost :: Wai.Request -> S.ByteString -> IO WaiProxyResponse
     processHost req host = do
-        -- Take the host name up until the port number.
-        mport <- liftIO $ portLookup $ S.takeWhile (/= 58) host
+        -- Perform two levels of lookup. First: look up the entire host. If
+        -- that fails, try stripping off any port number and try again.
+        mport <- liftIO $ do
+            mport1 <- portLookup host
+            case mport1 of
+                Just _ -> return mport1
+                Nothing -> do
+                    let host' = S.takeWhile (/= 58) host
+                    if host' == host
+                        then return Nothing
+                        else portLookup host'
         case mport of
             Nothing -> return $ WPRResponse $ unknownHostResponse host
             Just (action, requiresSecure)
diff --git a/Keter/Types/V04.hs b/Keter/Types/V04.hs
--- a/Keter/Types/V04.hs
+++ b/Keter/Types/V04.hs
@@ -32,7 +32,7 @@
     parseYamlFile basedir = withObject "AppConfig" $ \o -> AppConfig
         <$> lookupBase basedir o "exec"
         <*> o .:? "args" .!= []
-        <*> (T.takeWhile (/= ':') <$> o .: "host")
+        <*> o .: "host"
         <*> o .:? "ssl" .!= False
         <*> o .:? "extra-hosts" .!= Set.empty
         <*> return o
diff --git a/changelog.md b/changelog.md
--- a/changelog.md
+++ b/changelog.md
@@ -1,3 +1,5 @@
+__1.3.5.3__ More correct/complete solution for issue #44. Allows looking up hosts either with or without port numbers.
+
 __1.3.5.2__ Partial workaround for keter.yaml files that give a port with the hostname.
 
 __1.3.5.1__ Fix bug where the cleanup process would remain running.
diff --git a/keter.cabal b/keter.cabal
--- a/keter.cabal
+++ b/keter.cabal
@@ -1,5 +1,5 @@
 Name:                keter
-Version:             1.3.5.2
+Version:             1.3.5.3
 Synopsis:            Web application deployment manager, focusing on Haskell web frameworks
 Description:
     Handles deployment of web apps, providing a reverse proxy to achieve zero downtime deployments. For more information, please see the README on Github: <https://github.com/snoyberg/keter#readme>
