Webmaster test 2001 AGM

Instructions: Attempt all sections. You have 1 hour to complete the test.

Keep your answers short and to the point, length is relevent to the marks allocated for that question. Any unneccarily pedantic answers result in 0 marks for that section. You’ve been warned. There are no trick questions.

Section A ­ How big a web whore are you?

[ a.k.a. Web Design ] Answer all questions.

  1. List 3 good points, and 3 bad points about both IE (4 or later) and Netscape (4 or later). (3 marks)
  2. What are META tags? Why would you use them? Why are they called META tags? (2 marks)
  3. List the main differences between .jpg and .gif files, and include an example of when you would use them. (3 marks)
  4. Explain what relative and absolute URLs are. Give reasons for using either. (3 marks)
  5. Name the things you should do to ensure that you aren’t completely alienating people with text based browsers, or people with hearing or sight impairments. (4 marks)

Section B ­ How sad are you?

[ a.k.a. Expand the acronyms ] Do them all. (1 mark each)

  1. HTTP
  2. XML
  3. PHP
  4. WML
  5. HTML
  6. LDAP
  7. PHP
  8. PERL
  9. MIME
  10. DNS
  11. HTTPS
  12. CSS
  13. CGI
  14. WAP
  15. SQL

Section C - GET /questions.html HTTP/1.0\n\n

[ a.k.a. Web Serving ] Answer all questions.

  1. What is the default port that a normal (non ssl, non proxied) webserver listens on? (1 mark)
  2. What port does HTTPS normally run on? (1 mark)
  3. Name 3 products provided by the apache project. (2 marks)
  4. What are MIME types? Why do we need them? (2 marks)
  5. There is a major security issue with the currently available php module. What is it, and how does redbrick get around it? (3 marks)
  6. Name 1 major difference between HTTP version 1.0 and version 1.1. (2 marks)
  7. Why would you use mod_perl? (2 marks)
  8. What does OPTIONS IncludesNOEXEC do? (2 marks)

Section D ­ Pretend to be doing a CA3 project!

[ a.k.a. Web Programming ] Answer all questions.

  1. Describe briefly what a CGI script is. (2 marks)
  2. List 5 things that would stop a CGI script from working (when you access it from the web). (3 marks)
  3. Name three of the conditions that suexec checks before running a cgi program. (3 marks)
  4. Write a small program in either c, perl or php which will display the results from SELECT * FROM Moo, considering Moo is designed as follows. Column Name: ID FirstName Surname Age Type: int(10) primary key auto_increment varchar(50) varchar(50) int(3) Display the results in HTML, using a table. (10 marks)
  5. What are RFCs? Why are they so important? (2 marks)

Section E ­ # rm ­Rf /

[ a.k.a. Unix/Root Competency ]Answer all questions.

  1. List the command(s) to extract a file called moo.tar.gz. (1 marks)
  2. What is a daemon? (2 marks)
  3. What is meant by the `privileged port range’ on a unix system? (2 marks)
  4. What is inetd? Why would you use it instead of the rc.d / rc.local methods? What method do we currently use for apache on redbrick? (3 marks)
  5. Briefly describe the importance of DNS. (2 marks)
  6. What is a setuid program, and give and explain an example (preferably apache related) of it’s use. (3 marks)
  7. Considering I was to give you the root password for enigma right now. What barrier stops you from logging in, and list two ways of getting round it. (2 marks)

Section F -

[ a.k.a. Your Choice ] Answer a or b

A) Give instructions on how someone who had a fresh install of a unix, say, linux, would install apache with basic php (as a module, or as a cgi) enabled. You can’t use the ports or apt-get systems, (ie, you must use source). (20 marks)

B) What are the advantages in having a “chrooted” server? Mention the security features of such a setup, and why aren’t all webservers chrooted? (20 marks) [ let’s hope you looked at last years paper :P~ ]

Section G - Brownie Points!

[ a.k.a. Let’s see how observant you are ] Answer them all.

  1. What is the version of apache currently running on RB?
  2. Same question, only for php.
  3. Same question, only for jserv.
  4. What is the current, stable release version number of apache?
  5. Where is the apache root on redbrick?