Sep 10 - server side & CGI
homework
Discuss HTTP homework.
Mention "hidden" fields in HTML forms:
- google "html hidden form"
- what they look like in the code
- what they can be used for
- ways *not* to use them (i.e. "price=3.43" foolishness)
<form>
...
<input type="hidden" name="silly" value="l2k3j4l2k3j4l2k3j4lk23">
...
</form>
client / server overview
Discuss briefly the guts behind clients & servers
- sockets
- blocking / nonblocking
- threads, forks
web servers
- brief history
- config files
- /etc/apache2 on csmarlboro.org ; world readable
- threads vs forks
- discuss processes, and looking at 'em
- apache modules
- htaccess - basic authentication
- PHP, perl - mod_php, mod_perl ; run inside apache
- CGI - external script runs in its own process outside apache,
- FastCGI
- advantages : less memory footprint, works with other servers
- disadvantages : more work in configure & startup
- many, many others
others
- nginx
- lighttpd
- node.js (discuss here ?)
- framework specific test / deploy tools
python cgi
When making your own cgi scrips
Don't forget
chmod +x FILENAME
to make scripts executable
other example
security
- cross script | shell escape
- buffer overflows