Division 2
Batch: T3
111803157 Mrunal Kotkar
111803168 Vrinda Ahuja
- The main server file is webserver.py
- Run python3 webserver.py <port_no>
- For testing, three test files namely test1, test2 and test3 are present
- For combined testing, run python3 testing.py <port_no>
- Configuration file of the server is config.py
- Log file of server is access.log and will get updated as you make new requests.
- Snapshots of some cases of project are present in Screenshots folder
- Way to stop and restart the server by typing stop and restart respectively.
- HTTP Request Methods Implemented:
- GET
- HEAD
- POST
- PUT
- DELETE
- Config file: Implemented configuration file with Document Root for some functionalities of server.
- Multithreading in server: Implemented multithreading in server to run multiple requests simultaneously
- Logging:
- Levels of Logging - Implemented INFO and ERROR levels of logging for the log file
- Folder (Logfiles) - Compression of logfiles and moving them to a folder sequentially after a particular time
- Automated Tests:
- Test1 - Implemented different tests using multithreading and requests module
- Test2 - Implemented different tests for sample website using webbrowser module
- Test3 - Implemented different tests using socket programming and threading by manually creating requests.
- Testing - Combined tests of all the three testfiles.
- Implemented Cookies and handled Persistent and non-Persistent connections