diff --git a/CHANGELOG b/CHANGELOG
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,3 +1,17 @@
+debug-me (1.20170509) unstable; urgency=medium
+
+  * Server: Use "postmaster" as default --from-email address
+    rather than "unknown@server".
+  * Server: DEBUG_ME_FROM_EMAIL can be used to specify the --from-email.
+    This is used in debug-me.default to encourage configuring it.
+    Thanks, Sean Whitton.
+  * Avoid crash when --use-server is given an url that does not
+    include a path.
+  * Fix bug that prevented creating ~/.debug-me/log/remote/
+    when ~/.debug-me/ didn't already exist.
+
+ -- Joey Hess <id@joeyh.name>  Tue, 09 May 2017 19:20:32 -0400
+
 debug-me (1.20170505) unstable; urgency=medium
 
   * First release of debug-me.
diff --git a/Hash.hs b/Hash.hs
--- a/Hash.hs
+++ b/Hash.hs
@@ -84,7 +84,7 @@
 	hash = hash . B.concat . map (val . hashValue)
 
 -- | Hash empty string for Nothing
-instance Hashable v => Hashable (Maybe v) where
+instance Hashable (Maybe Hash) where
 	hash Nothing = hash ()
 	hash (Just v) = hash v
 
diff --git a/Log.hs b/Log.hs
--- a/Log.hs
+++ b/Log.hs
@@ -68,7 +68,7 @@
 	setup = do
 		basedir <- logDir
 		let dir = maybe basedir (basedir </>) subdir
-		createDirectoryIfMissing False dir
+		createDirectoryIfMissing True dir
 		return $ sessionLogFile dir sessionid
 	cleanup logfile = putStrLn $ "** debug-me session was logged to " ++ logfile
 	go logfile = withFile logfile WriteMode (a . mkLogger)
diff --git a/Server.hs b/Server.hs
--- a/Server.hs
+++ b/Server.hs
@@ -33,6 +33,7 @@
 import System.Directory
 import System.Mem.Weak
 import Network.Mail.Mime
+import System.Environment
 
 type ServerState = M.Map SessionID Session
 
@@ -95,7 +96,9 @@
 closeSession (Session bchan _ _) = closeTMChan bchan
 
 server :: ServerOpts -> IO ()
-server o = runSettings settings . app o =<< newServerState
+server o = do
+	o' <- checkEnv o
+	runSettings settings . app o' =<< newServerState
   where
 	settings =
 		-- Prefer IPv6 but allow IPv4 as well
@@ -105,6 +108,12 @@
 		setPort (serverPort o) $
 		defaultSettings
 
+checkEnv :: ServerOpts -> IO ServerOpts
+checkEnv o = go <$> lookupEnv "DEBUG_ME_FROM_EMAIL"
+  where
+	go Nothing = o
+	go (Just email) = o { serverEmail = Just (T.pack email) }
+
 app :: ServerOpts -> TVar ServerState -> Application
 app o ssv = websocketsOr connectionOptions (websocketApp o ssv) webapp
   where
@@ -262,7 +271,7 @@
 	| otherwise = return ()
   where
 	to = Address Nothing email
-	from = Address Nothing $ fromMaybe "unknown@server" (serverEmail o)
+	from = Address Nothing $ fromMaybe "postmaster" (serverEmail o)
 	subject = "Your recent debug-me session"
 	body = "Attached is the log from your recent debug-me session."
 	isemail = "@" `T.isInfixOf` email
diff --git a/WebSockets.hs b/WebSockets.hs
--- a/WebSockets.hs
+++ b/WebSockets.hs
@@ -144,7 +144,9 @@
 	port = case uriPort serverauth of
 		(':':s) -> fromMaybe 80 (readMaybe s)
 		_ -> 80
-	endpoint = uriPath serverurl
+	endpoint = case uriPath serverurl of
+		[] -> "/"
+		p -> p
 
 	catchconnclosed ConnectionClosed = Just ()
 	catchconnclosed _ = Nothing
diff --git a/debug-me.1 b/debug-me.1
--- a/debug-me.1
+++ b/debug-me.1
@@ -88,6 +88,8 @@
 .IP "--from-email address"
 The server will email session logs to users. It's a good idea to
 provide a real email address, otherwise a dummy one will be used.
+You can also set the enviroment variable DEBUG_ME_FROM_EMAIL to configure
+this.
 .IP "--delete-old-logs"
 Normally the server will retain old log files so that users and developers
 can refer to them. This option makes it delete the log file once the
@@ -96,6 +98,9 @@
 .IP "~/.debug-me/log/"
 Sessions are logged to here. The log file name is displayed when debug-me
 exits.
+.IP "~/.debug-me/log/remote/"
+When using debug-me to connect to a remote session, the session will be
+logged to here.
 .SH SEE ALSO
 <https://debug-me.branchable.com/>
 .PP
diff --git a/debug-me.cabal b/debug-me.cabal
--- a/debug-me.cabal
+++ b/debug-me.cabal
@@ -1,5 +1,5 @@
 Name: debug-me
-Version: 1.20170505
+Version: 1.20170509
 Cabal-Version: >= 1.8
 Maintainer: Joey Hess <joey@kitenet.net>
 Author: Joey Hess
@@ -11,7 +11,7 @@
 Build-Type: Custom
 Synopsis: secure remote debugging
 Description:
- Debugging a problem over email is slow, tedious, and hard. The developer
+ Debugging a problem over email/irc/BTS is slow, tedious, and hard. The developer
  needs to see your problem to understand it. Debug-me aims to make debugging
  fast, fun, and easy, by letting the developer access your computer remotely,
  so they can immediately see and interact with the problem. Making your
diff --git a/debug-me.default b/debug-me.default
--- a/debug-me.default
+++ b/debug-me.default
@@ -1,2 +1,6 @@
+# Configure the email address that debug-me uses when emailing logs to
+# users.
+DEBUG_ME_FROM_EMAIL=postmaster
+
 # Parameters to pass to debug-me when it's started as a daemon.
 DAEMON_PARAMS="--server /var/log/debug-me/ --delete-old-logs"
