Bind to IPv4 by default

This commit is contained in:
Michael 2011-12-20 15:57:15 +02:00
parent 430e724eeb
commit 5fdab3b731
2 changed files with 14 additions and 4 deletions

View File

@ -11,7 +11,8 @@ import Yesod.Core hiding (AppConfig (..))
import Yesod.Default.Config import Yesod.Default.Config
import Yesod.Logger (Logger, makeLogger, logString, logLazyText, flushLogger) import Yesod.Logger (Logger, makeLogger, logString, logLazyText, flushLogger)
import Network.Wai (Application) import Network.Wai (Application)
import Network.Wai.Handler.Warp (run) import Network.Wai.Handler.Warp
(runSettings, defaultSettings, settingsPort, settingsHost)
import Network.Wai.Middleware.Debug (debugHandle) import Network.Wai.Middleware.Debug (debugHandle)
import System.Directory (doesDirectoryExist, removeDirectoryRecursive) import System.Directory (doesDirectoryExist, removeDirectoryRecursive)
import Network.Wai.Middleware.Gzip (gzip', GzipFiles (GzipCacheFolder), gzipFiles, def) import Network.Wai.Middleware.Gzip (gzip', GzipFiles (GzipCacheFolder), gzipFiles, def)
@ -46,7 +47,10 @@ defaultMain :: (Show env, Read env)
defaultMain load withSite = do defaultMain load withSite = do
config <- load config <- load
logger <- makeLogger logger <- makeLogger
withSite config logger $ run (appPort config) withSite config logger $ runSettings
{ settingsHost = "0.0.0.0"
, settingsPort = appPort config
}
-- | Run your application continously, listening for SIGINT and exiting -- | Run your application continously, listening for SIGINT and exiting
-- when recieved -- when recieved

View File

@ -25,6 +25,7 @@ import qualified Data.Text as T
import qualified Data.Text.IO as T import qualified Data.Text.IO as T
import System.Directory (createDirectoryIfMissing, removeFile, import System.Directory (createDirectoryIfMissing, removeFile,
doesFileExist,
getDirectoryContents) getDirectoryContents)
import System.Exit (exitFailure, exitSuccess) import System.Exit (exitFailure, exitSuccess)
import System.Posix.Types (EpochTime) import System.Posix.Types (EpochTime)
@ -35,6 +36,7 @@ import System.Process (runCommand, terminateProcess,
import Text.Shakespeare.Text (st) import Text.Shakespeare.Text (st)
import Build (recompDeps, getDeps,findHaskellFiles) import Build (recompDeps, getDeps,findHaskellFiles)
import Control.Monad (unless)
#if __GLASGOW_HASKELL__ >= 700 #if __GLASGOW_HASKELL__ >= 700
#define ST st #define ST st
@ -79,7 +81,8 @@ devel isDevel = do
, "--disable-library-profiling" , "--disable-library-profiling"
] ]
T.writeFile "dist/devel.hs" (develFile pid) exists <- doesFileExist "dist/devel.hs"
unless exists $ T.writeFile "dist/devel.hs" (develFile pid)
mainLoop isDevel mainLoop isDevel
@ -169,7 +172,10 @@ main :: IO ()
main = do main = do
putStrLn "Starting devel application" putStrLn "Starting devel application"
wdap <- (return . fromJust . fromDynamic) withDevelAppPort wdap <- (return . fromJust . fromDynamic) withDevelAppPort
forkIO . wdap $ \(port, app) -> run port app forkIO . wdap $ \(port, app) -> runSettings defaultSettings
{ settingsPort = port
, settingsHost = "0.0.0.0"
} app
loop loop
loop :: IO () loop :: IO ()