1#![cfg_attr(docsrs, feature(doc_cfg))]
8
9#[cfg(test)]
12extern crate self as rust_web_server;
13
14#[allow(unused_imports)]
17#[doc(hidden)]
18pub use rws_server::{app, app_manifest, application, authz, blocklist, cache, config_reload, core, disk_guard, early_hints, entry_point, error, ext, feature, header, http, http_client, ip_filter, maintenance, mcp, metrics, middleware, range, rate_limit, request, request_log, response, rewrite, router, server, server_config, service_discovery, session, sse, state, url};
19#[cfg(feature = "auth")]
20#[doc(hidden)]
21pub use rws_server::auth;
22#[cfg(not(target_arch = "wasm32"))]
23#[doc(hidden)]
24pub use rws_server::circuit_breaker;
25#[cfg(all(any(feature = "http-client", feature = "http2"), not(target_arch = "wasm32")))]
26#[doc(hidden)]
27pub use rws_server::crypto_provider;
28#[cfg(not(target_arch = "wasm32"))]
29#[doc(hidden)]
30pub use rws_server::log;
31#[cfg(not(target_arch = "wasm32"))]
32#[doc(hidden)]
33pub use rws_server::otel;
34#[cfg(not(target_arch = "wasm32"))]
35#[doc(hidden)]
36pub use rws_server::redis_protocol;
37#[cfg(feature = "sso")]
38#[doc(hidden)]
39pub use rws_server::sso;
40#[cfg(any(feature = "model-sqlite", feature = "model-postgres", feature = "model-mysql"))]
41#[doc(hidden)]
42pub use rws_server::model;
43#[cfg(all(unix, any(feature = "http1", feature = "http2")))]
44#[doc(hidden)]
45pub use rws_server::systemd;
46#[cfg(not(target_arch = "wasm32"))]
47#[doc(hidden)]
48pub use rws_server::timeout;
49#[cfg(feature = "http2")]
50#[doc(hidden)]
51pub use rws_server::tls;
52#[cfg(all(any(feature = "http-client", feature = "http2"), not(target_arch = "wasm32")))]
53#[doc(hidden)]
54pub use rws_server::tls_client_builder;
55#[cfg(not(target_arch = "wasm32"))]
56#[doc(hidden)]
57pub use rws_server::websocket;
58#[cfg(feature = "acme")]
59#[doc(hidden)]
60pub use rws_acme::acme;
61#[cfg(feature = "storage-s3")]
62#[doc(hidden)]
63pub use rws_storage::storage;
64#[cfg(feature = "wasm-plugins")]
65#[doc(hidden)]
66pub use rws_wasm_plugin::wasm_plugin;
67
68#[cfg(not(target_arch = "wasm32"))]
69pub mod proxy;
70#[cfg(not(target_arch = "wasm32"))]
71pub mod proxy_config;
72#[cfg(not(target_arch = "wasm32"))]
73pub mod admin;
74#[cfg(not(target_arch = "wasm32"))]
76pub mod dev_mcp;
77#[cfg(not(target_arch = "wasm32"))]
79pub mod cluster;
80#[cfg(all(feature = "http2", not(target_arch = "wasm32")))]
82pub mod fleet;
83pub mod config_check;
84#[cfg(not(target_arch = "wasm32"))]
85pub mod llm;
86#[cfg(not(target_arch = "wasm32"))]
87pub mod tcp_proxy;
88#[cfg(not(target_arch = "wasm32"))]
89pub mod udp_proxy;
90#[cfg(not(target_arch = "wasm32"))]
91pub mod ws_proxy;
92#[cfg(not(target_arch = "wasm32"))]
93pub mod canary;
94#[cfg(not(target_arch = "wasm32"))]
95pub mod ingress;
96pub mod waf;
98pub mod a2a;
99#[cfg(not(target_arch = "wasm32"))]
101pub mod fastcgi;
102pub mod traffic;
103
104#[cfg(test)]
105pub(crate) mod test_env;
106#[cfg(test)]
108pub(crate) use rws_server::test_client;
109#[cfg(all(test, feature = "http2"))]
110pub(crate) use rws_server::h2_server;
111#[cfg(all(test, feature = "http3"))]
112pub(crate) use rws_server::h3_handler;