fixed http_connection redirection support and added test (still requires lighttp)
This commit is contained in:
@@ -71,11 +71,13 @@ void start_web_server(int port)
|
||||
{
|
||||
stop_web_server(port);
|
||||
std::ofstream f("./lighty_config");
|
||||
f << "server.modules = (\"mod_access\")\n"
|
||||
f << "server.modules = (\"mod_access\", \"mod_redirect\")\n"
|
||||
"server.document-root = \"" << boost::filesystem::initial_path().string() << "\"\n"
|
||||
"server.range-requests = \"enable\"\n"
|
||||
"server.port = " << port << "\n"
|
||||
"server.pid-file = \"./lighty" << port << ".pid\"\n";
|
||||
"server.pid-file = \"./lighty" << port << ".pid\"\n"
|
||||
"url.redirect = (\"^/redirect$\" => \"http://127.0.0.1:" << port << "/test_file\", "
|
||||
"\"^/infinite_redirect$\" => \"http://127.0.0.1:" << port << "/infinite_redirect\")";
|
||||
f.close();
|
||||
|
||||
system("lighttpd -f lighty_config &");
|
||||
|
@@ -97,6 +97,8 @@ int test_main()
|
||||
std::srand(std::time(0));
|
||||
std::generate(data_buffer, data_buffer + sizeof(data_buffer), &std::rand);
|
||||
std::ofstream("test_file").write(data_buffer, 3216);
|
||||
run_test("http://127.0.0.1:8001/redirect", 3216, 200, 2, asio::error_code());
|
||||
run_test("http://127.0.0.1:8001/infinite_redirect", 0, 301, 6, asio::error_code());
|
||||
run_test("http://127.0.0.1:8001/test_file", 3216, 200, 1, asio::error_code());
|
||||
run_test("http://127.0.0.1:8001/non-existing-file", -1, 404, 1, err());
|
||||
run_test("http://non-existent-domain.se/non-existing-file", -1, -1, 0, err(asio::error::host_not_found));
|
||||
|
Reference in New Issue
Block a user