simpleServer.py 1.2 KB
Newer Older
Sorrel Harriet's avatar
Sorrel Harriet committed
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#!/usr/bin/env python3
# above 'she-bang' line makes the script executable from command line

""" A Simple Web Server
	Run with ./simpleServer.py
	Make sure all cgi scripts are executable
	for single script:
		 chmod +x simpleServer.py
	or for a whole directory:
		 chmod -r +x cgi-bin/
"""

import http.server										# import http.server module
import cgitb; cgitb.enable()							# import and enable cgitb module for exception handling

PORT = 8000												# specifies the port number to accept connections on

server = http.server.HTTPServer 						# provides simple web server
handler = http.server.CGIHTTPRequestHandler 			# provides request handler
server_address = ("", PORT)								# specify server directory and port number
handler.cgi_directories = ["/","/cgi-bin","/htbin"]		# where CGI scripts will reside in relation to the `server' directory

print("Starting server...")					# outputs a message 
httpd = server(server_address, handler)		# creates the server, passing it the server address and port number, as well as the CGI handler (httpd stands for HTTP Daemon)
print("serving at port", PORT)				# outputs a message
httpd.serve_forever()						# puts program in infinite loop so that the server can `serve_forever'