Thanks for the answer. I prefer to use the standard plt-web-server executable, because I'm working in a small internal project for a few hundreds users. I solved my problem using a refresh in the index.html file to redirect the users to the real page. It isn't very elegant, but it works.
This message is more like a feature request for the plt-web-server: If I put a ".rkt" file, I expect to see the "result" from the execution of the servlet in the browser, not the source code. If I add "index.rkt" to the default-indices, I'm surprised, because I see the source code. Is it sensible to change the default behavior of the plt-web-server in this case? Gustavo (If I add "index.gif" to the default-indices, the "index.gif" file is served as an image/gif file as expected. I don't know why someone would want to do that, but it works.) On Wed, Feb 22, 2012 at 16:41, Jay McCarthy <jay.mccar...@gmail.com> wrote: > Indexes are used by the file server to turn a directory request into a > file request if the file exists. > > What you want is some default behavior if there is no other handler > for a request, you could do that with a lift [1] dispatcher where the > procedure was just (lambda (req) (redirect-to "/index.rkt")) or > something that looked at the request's URL, found it to be a > directory, and then redirected to /index.rkt. > > If you have your file server setup to serve a directory that contains > the servlet source, then if requests for those files get to it, then > they'll be served as source... because they are just files to that > code. > > Jay > > 1. Section 2.5 of the Web Server docs > > On Tue, Feb 21, 2012 at 11:29 AM, Gustavo Massaccesi <gust...@oma.org.ar> > wrote: >> I wanted to make a 100% racket website (no html files), using the >> standard plt-web-server.exe (version 5.2.1, Windows). I need that all >> the pages are customized to each user. >> >> So I edited the configuration-table.rkt file to include the index.rkt >> in the list of default indices. >> >> ;-- >> ;Edited File: configuration-table.rkt >> ( ... >> (default-host-table >> (host-table >> (default-indices "index.rkt" "index.html" "index.htm") >> ...)) >> ...) >> ;-- >> >> For example, I use the example from >> http://docs.racket-lang.org/web-server/servlet.html as "index.rkt" >> (with (require web-server/http/xexpr)) in the web-root/htdoc >> directory, and launched the webserver. >> >> If I go to http://localhost/index.rkt , the example works as expected >> and I see the "Hi Mom!" message. >> >> But if I go to http://localhost/ , then I get the source code of the >> "index.rkt" file, something like. >> #lang racket (require web-server/managers/none) ... (...(...(...(body >> (h1 "Hi Mom!"))))) >> but I expected to see only the "Hi Mom!" message. >> >> Now I'm using a index.htm file with a redirection: >> <meta http-equiv="REFRESH" content="1;url=/index.rkt"> >> so the problem is almost solved. >> >> But I don't know if there is a better solution. Another problem is >> that the source code of the .rkt files may have some secret info that >> the users should not see (this is not my case). >> >> Gustavo >> ____________________ >> Racket Users list: >> http://lists.racket-lang.org/users > > > > -- > Jay McCarthy <j...@cs.byu.edu> > Assistant Professor / Brigham Young University > http://faculty.cs.byu.edu/~jay > > "The glory of God is Intelligence" - D&C 93 ____________________ Racket Users list: http://lists.racket-lang.org/users