- The project should include a web server, and an example webpage
- Webserver should continue to accept multiple requests from client browser
- Webserver should print out logs: how many connections have been established and what is request method (GET or POST).
- The example webpage you include within the webserver should include a welcome page and a small picture.
Exemplary Steps:
1. Make web server program with Python code and compile it (you should learn by yourselves): in this step, you should specify you would like to accept requests from clients.
2. Prepare a simple web page you want to show to the user when the client browserconnects to the server. Put the example web page in the same dictionary of your server program.
3. Using web browser in the same computer, connect to https://localhost:
4. Connect multiple times and check whether your program spawns threads properly.
Report (not more than two pages)
- Briefly introduce how the multi-thread works. DO NOT INCLUDE SOURCE CODE IN YOUR REPORT
- Include output from web server (logs) and one screen shot of web browser when it is connected.
Bonus
Instead of using a browser, write your own HTTP client to test your server. Your client will connect to the server using a TCP connection, send an HTTP request to the server, and display the server response as an output. You can assume that the HTTP request sent is a GET method.
The client should take command line arguments specifying the server IP address or host name, the port at which the server is listening, and the path at which the requested object is stored at the server. The following is an input command format to run the client.
client.py server_hostserver_port filename