• Places
    • Home
    • Graphs
    • Prefixes
  • Admin
    • Users
    • Settings
    • Plugins
    • Statistics
  • Repository
    • Load local file
    • Load from HTTP
    • Load from library
    • Remove triples
    • Clear repository
  • Query
    • YASGUI SPARQL Editor
    • Simple Form
  • Help
    • Documentation
    • Tutorial
    • Roadmap
    • HTTP Services
  • Login

/usr/lib/swipl-7.5.1/library/http/http_server_files.pl
AllApplicationManualNameSummaryHelp

  • library
    • http
      • thread_httpd.pl -- Threaded HTTP server
      • http_wrapper.pl -- Server processing of an HTTP request
      • http_header.pl -- Handling HTTP headers
      • html_write.pl -- Write HTML text
      • html_quasiquotations.pl -- HTML quasi quotations
      • http_dispatch.pl -- Dispatch requests in the HTTP server
      • mimetype.pl -- Determine mime-type for a file
      • http_path.pl -- Abstract specification of HTTP server locations
      • http_host.pl -- Obtain public server location
      • http_exception.pl -- Map Prolog exceptions to HTTP errors
      • mimepack.pl -- Create a MIME message
      • http_stream.pl -- HTTP Streams
      • http_parameters.pl -- Extract parameters (GET and POST) from HTTP requests
      • http_client.pl -- HTTP client library
      • http_open.pl -- HTTP client library
      • http_multipart_plugin.pl -- Multipart form-data plugin
      • http_hook.pl -- HTTP library hooks
      • html_head.pl -- Automatic inclusion of CSS and scripts links
      • jquery.pl -- Provide JQuery
      • http_server_files.pl -- Serve files needed by modules from the server
        • serve_files_in_directory/2
      • http_session.pl -- HTTP Session management
      • http_openid.pl -- OpenID consumer and server library
      • yadis.pl -- Yadis discovery
      • ax.pl -- Attribute Exchange library
      • http_authenticate.pl -- Authenticate HTTP connections using 401 headers
      • http_json.pl -- HTTP JSON Plugin module
      • json.pl -- Reading and writing JSON serialization
      • http_dirindex.pl -- HTTP directory listings
      • js_write.pl -- Utilities for including JavaScript
      • js_grammar.pl -- JavaScript grammar
      • dcg_basics.pl -- DCG basics
      • http_cors.pl -- Enable CORS: Cross-Origin Resource Sharing
      • json_convert.pl -- Convert between JSON terms and Prolog application terms
      • http_ssl_plugin.pl -- SSL plugin for HTTP libraries
      • http_error.pl -- Decorate uncaught HTTP exceptions with stack-trace
      • term_html.pl -- Represent Prolog terms as HTML
serve_files_in_directory(+Alias, +Request)
Serve files from the directory Alias from the path-info from Request. This predicate is used together with file_search_path/2. Note that multiple clauses for the same file_search_path alias can be used to merge files from different physical locations onto the same HTTP directory. Note that the handler must be declared as prefix. Below is an example serving images from http://<host>/img/... from the directory http/web/icons.
http:location(img, root(img), []).
user:file_search_path(icons, library('http/web/icons')).

:- http_handler(img(.), serve_files_in_directory(icons), [prefix]).

This predicate calls http_404/2 if the physical file cannot be located. If the requested path-name is unsafe (i.e., points outside the hierarchy defines by the file_search_path/2 declaration), this handlers returns a 403 Forbidden page.

See also
- http_reply_file/3
ClioPatria (version V3.0.0-338-gc91dba5-DIRTY)