Implement port remapping
parent
55b450f371
commit
6d60b5a74f
|
@ -1,9 +1,8 @@
|
|||
! Copyright (C) 2008 Slava Pestov.
|
||||
! See http://factorcode.org/license.txt for BSD license.
|
||||
USING: kernel accessors combinators namespaces fry
|
||||
io.servers.connection urls http http.server
|
||||
http.server.redirection http.server.responses
|
||||
http.server.filters furnace ;
|
||||
USING: kernel accessors combinators namespaces fry urls http
|
||||
http.server http.server.redirection http.server.responses
|
||||
http.server.remapping http.server.filters furnace ;
|
||||
IN: furnace.redirection
|
||||
|
||||
: <redirect> ( url -- response )
|
||||
|
@ -16,7 +15,7 @@ IN: furnace.redirection
|
|||
: >secure-url ( url -- url' )
|
||||
clone
|
||||
"https" >>protocol
|
||||
secure-port >>port ;
|
||||
secure-http-port >>port ;
|
||||
|
||||
: <secure-redirect> ( url -- response )
|
||||
>secure-url <redirect> ;
|
||||
|
|
|
@ -0,0 +1,12 @@
|
|||
! Copyright (C) 2008 Slava Pestov.
|
||||
! See http://factorcode.org/license.txt for BSD license.
|
||||
USING: namespaces assocs kernel io.servers.connection ;
|
||||
IN: http.server.remapping
|
||||
|
||||
SYMBOL: port-remapping
|
||||
|
||||
: remap-port ( n -- n' )
|
||||
[ port-remapping get at ] keep or ;
|
||||
|
||||
: secure-http-port ( -- n )
|
||||
secure-port remap-port ;
|
|
@ -18,6 +18,7 @@ fry logging logging.insomniac calendar urls
|
|||
http
|
||||
http.parsers
|
||||
http.server.responses
|
||||
http.server.remapping
|
||||
html.templates
|
||||
html.elements
|
||||
html.streams ;
|
||||
|
@ -188,7 +189,7 @@ LOG: httpd-header NOTICE
|
|||
"/" split harvest ;
|
||||
|
||||
: init-request ( request -- )
|
||||
[ request set ] [ url>> url set ] bi
|
||||
[ request set ] [ url>> [ remap-port ] change-port url set ] bi
|
||||
V{ } clone responder-nesting set ;
|
||||
|
||||
: dispatch-request ( request -- response )
|
||||
|
|
Loading…
Reference in New Issue