diff --git a/yesod-default/Yesod/Default/Handlers.hs b/yesod-default/Yesod/Default/Handlers.hs index d5b95a1c..cb58e07b 100644 --- a/yesod-default/Yesod/Default/Handlers.hs +++ b/yesod-default/Yesod/Default/Handlers.hs @@ -5,10 +5,10 @@ module Yesod.Default.Handlers ) where import Yesod.Handler (GHandler, sendFile) -import Yesod.Content (RepPlain(..), ToContent(..)) +import Yesod.Content (RepPlain(..)) getFaviconR :: GHandler s m () getFaviconR = sendFile "image/x-icon" "config/favicon.ico" getRobotsR :: GHandler s m RepPlain -getRobotsR = return $ RepPlain $ toContent ("User-agent: *" :: String) +getRobotsR = sendFile "text/plain" "config/robots.txt" diff --git a/yesod/Scaffolding/Scaffolder.hs b/yesod/Scaffolding/Scaffolder.hs index 0d814b49..a886c4f3 100644 --- a/yesod/Scaffolding/Scaffolder.hs +++ b/yesod/Scaffolding/Scaffolder.hs @@ -189,5 +189,9 @@ scaffold = do $(runIO (S.readFile "scaffold/config/favicon.ico.cg") >>= \bs -> do pack <- [|S.pack|] return $ pack `AppE` LitE (StringL $ S.unpack bs)) + + S.writeFile (dir ++ "/config/robots.txt") + $(runIO (S.readFile "scaffold/config/robots.txt.cg") >>= \bs -> do + [|S.pack $(return $ LitE $ StringL $ S.unpack bs)|]) puts $(codegenDir "input" "done") diff --git a/yesod/scaffold/config/robots.txt.cg b/yesod/scaffold/config/robots.txt.cg new file mode 100644 index 00000000..7d329b1d --- /dev/null +++ b/yesod/scaffold/config/robots.txt.cg @@ -0,0 +1 @@ +User-agent: *