on master help sign in
Made document root configurable.
d47227dJasper Van der Jeugt
src/Network/Hakyll/SimpleServer.hs+5−4
@@ -159,14 +159,15 @@ respond handle = do
159 putHeader (key, value) = B.hPutStr handle $ key `B.append` B.pack ": "
159 putHeader (key, value) = B.hPutStr handle $ key `B.append` B.pack ": "
160 `B.append` value `B.append` B.pack "\r\n"
160 `B.append` value `B.append` B.pack "\r\n"
161
161
162−-- | Start a simple http server on the given 'PortNumber'.
162+-- | Start a simple http server on the given 'PortNumber', serving the given
163+-- directory.
163−simpleServer :: PortNumber -> IO ()
164+simpleServer :: PortNumber -> FilePath -> IO ()
164−simpleServer port = do
165+simpleServer port root = do
165 putStrLn $ "Starting hakyll server on port " ++ show port ++ "..."
166 putStrLn $ "Starting hakyll server on port " ++ show port ++ "..."
166 socket <- listenOn (PortNumber port)
167 socket <- listenOn (PortNumber port)
167 forever (listen socket)
168 forever (listen socket)
168 where -- A default configuration.
169 where -- A default configuration.
169− config = ServerConfig { documentRoot = "_site"
170+ config = ServerConfig { documentRoot = root
170 , portNumber = port
171 , portNumber = port
171 }
172 }
172
173
src/Text/Hakyll.hs+1−1
@@ -45,4 +45,4 @@ help = do
45 ++ name ++ " server [port] Run a local test server.\n"
45 ++ name ++ " server [port] Run a local test server.\n"
46
46
47server :: Integer -> IO ()
47server :: Integer -> IO ()
48−server p = do simpleServer (fromIntegral $ p)
48+server p = do simpleServer (fromIntegral $ p) "_site"