file_server_app.erl 638 B

1234567891011121314151617181920212223242526272829
  1. %% Feel free to use, reuse and abuse the code in this file.
  2. %% @private
  3. -module(file_server_app).
  4. -behaviour(application).
  5. %% API.
  6. -export([start/2]).
  7. -export([stop/1]).
  8. %% API.
  9. start(_Type, _Args) ->
  10. Dispatch = cowboy_router:compile([
  11. {'_', [
  12. {"/[...]", cowboy_static, {priv_dir, file_server, "", [
  13. {mimetypes, cow_mimetypes, all},
  14. {dir_handler, directory_h}
  15. ]}}
  16. ]}
  17. ]),
  18. {ok, _} = cowboy:start_clear(http, [{port, 8080}], #{
  19. env => #{dispatch => Dispatch},
  20. middlewares => [cowboy_router, directory_lister, cowboy_handler]
  21. }),
  22. file_server_sup:start_link().
  23. stop(_State) ->
  24. ok = cowboy:stop_listener(http).