44int main(
int argc,
char* argv[]) {
45 utils::Config::addStringOption(
"--web-root",
"Root directory of the web site",
"[path]");
50 const legacy::in6::WebApp legacyApp(
"legacy");
52 const Router& vh1 = middleware::VHost(
"localhost:8080");
53 vh1.use(middleware::StaticMiddleware(utils::Config::getStringOptionValue(
"--web-root")));
56 const Router& vh2 = middleware::VHost(
"atlas.home.vchrist.at:8080");
58 res->send(
"Hello! I am VHOST atlas.home.vchrist.at.");
62 const Router& vh3 = middleware::VHost(
"ceres.home.vchrist.at:8080");
64 res->send(
"Hello! I am VHOST ceres.home.vchrist.at.");
69 res->status(404).send(
"The requested resource is not found.");
72 legacyApp.listen(8080,
73 [instanceName = legacyApp.getConfig().getInstanceName()](
const legacy::in6::WebApp::SocketAddress& socketAddress,
74 const core::socket::State& state) {
76 case core::socket::State::OK:
77 VLOG(1) << instanceName <<
" listening on '" << socketAddress.toString() <<
"'";
79 case core::socket::State::DISABLED:
80 VLOG(1) << instanceName <<
" disabled";
82 case core::socket::State::ERROR:
83 LOG(ERROR) << instanceName <<
" " << socketAddress.toString() <<
": " << state.what();
85 case core::socket::State::FATAL:
86 LOG(FATAL) << instanceName <<
" " << socketAddress.toString() <<
": " << state.what();
93 const express::tls::in6::WebApp tlsApp(
"tls");
95 const Router& vh1 = middleware::VHost(
"localhost:8088");
96 vh1.use(getRouter(utils::Config::getStringOptionValue(
"--web-root")));
99 const Router& vh2 = middleware::VHost(
"atlas.home.vchrist.at:8088");
101 res->send(
"Hello! I am VHOST atlas.home.vchrist.at.");
105 const Router& vh3 = middleware::VHost(
"ceres.home.vchrist.at:8080");
107 res->send(
"Hello! I am VHOST ceres.home.vchrist.at.");
112 res->status(404).send(
"The requested resource is not found.");
116 [instanceName = tlsApp.getConfig().getInstanceName()](
const legacy::in6::WebApp::SocketAddress& socketAddress,
117 const core::socket::State& state) {
119 case core::socket::State::OK:
120 VLOG(1) << instanceName <<
" listening on '" << socketAddress.toString() <<
"'";
122 case core::socket::State::DISABLED:
123 VLOG(1) << instanceName <<
" disabled";
125 case core::socket::State::ERROR:
126 LOG(ERROR) << instanceName <<
" " << socketAddress.toString() <<
": " << state.what();
128 case core::socket::State::FATAL:
129 LOG(FATAL) << instanceName <<
" " << socketAddress.toString() <<
": " << state.what();
134 tlsApp.getConfig().setCert(
"/home/voc/projects/snodec/snode.c/certs/wildcard.home.vchrist.at_-_snode.c_-_server.pem");
135 tlsApp.getConfig().setCertKey(
136 "/home/voc/projects/snodec/snode.c/certs/Volker_Christian_-_Web_-_snode.c_-_server.key.encrypted.pem");
137 tlsApp.getConfig().setCertKeyPassword(
"snode.c");