Foundational Knowledge
Basics: What happens when you type google.com?
- Client: A user types www.google.com
- It is read by DNS server and converted into a machine format
- Your computer's address is tracked with your IP address to be able to return back information
- The message then gets sent to internet routers
- Finally, routers send the message to the designate server (in this case - of google) after reading the message:
- Servers open the message and read (say http://www.google.com) and send information back. / usually implies a standard text file (html, css, php etc) such as home.html.
- Servers then send back the information to the IP address that sent the message, also tagging it with its own IP address
- Connection closes, icon stops spinning; HTML is static state l other languages continue to access the server (make subsequent calls - ex Facebook message window)
- Website closes
Getting started with web-hosting
- Get domain Name
- Choose web-hosting company; company gives you DNS server address
- Tell registrar what your DNS servers are, go to the account page and type in your DNS server address
- Implement the website
Glossary
IP Address
It is a numerical label assigned to each device (e.g., computer, printer) participating in a computer network that uses the Internet Protocol for communication. An IP address serves two principal functions: host or network interface identification and location addressing. Its role has been characterized as follows: "A name indicates what we seek. An address indicates where it is. A route indicates how to get there
DNS Server
A record:
- domain name -- IP address A 2.3.4.5
- authoritative (A)
CName record:
- map one domain name to another fully qualified domain name
- - pros: avoids problems when the first domain name is changed
- - cons: latency time is longer
Virtual Private Servers (VPS)
- creates virtual cores that can handle simultaneously multiple tasks
- get a root and; might coexist with others in the same machine (allocated resources - bandwidth limitations)
Platforms to transform data
- SSH
- SFTP
- Fugu
- Putty - free
HTML format
<html>
<head>
<title> hello, world </title>
</head>
<body>
hello, world!!!!!
</body>
</html>
CSS format
<!DOCTYPE html
PUBLIC "-//WRC//DTD XHTML 1.0 transitional/EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitiona.dtd">
<html xmlns= "http://www.w3.org/1999/xhtml">
<head>
<style type="text/css">
<!..
body {background: #fff;}
..>
</style>
<title> hello, world </title>
</head>
<body>
hello world
</body>
</html>
Notes:
Hashing
- Can also hash - by specifying style file rather than including it in here.
- Ex: <link href="/styles.css" rel="stylesheet" type="text/css" />
- Pros: if you put it in sourcecode users have to go through it again and again when they open other pages within this website; if it is linked (hashed) then they don't have to read through it again, it is available
- Cons: For first page, there is extra latency; also need to download index.html before it can download all the other files such as style
Libraries: Yahoo! UI Library (YUI)
- for Javascript and CSS
- starting point
- helps to have consistent aesthetics in different browsers
- YUI Reset CSS
- YUI Fonts CSS
Forms - Basic YUI input codes
<input name="email" type="text" />
<input name="password" type="password" />
<input name="id" value="123" />
<input checked="checked" name="remember" type="checkbox" />
<input name="gender" type="radio" value="F" />
<input name="gender" type="radio" value="M" />
<select name="state">
<option value=""></option>
<option value="MA"></option>
<option value="NY"></option>
</select>
PHP
Apache
Apache has been the most popular HTTP server software. Apache supports a variety of features, many implemented as compiled modules which extend the core functionality. These can range from server-side programming language support to authentication schemes. Some common language interfaces support Perl, Python, Tcl, and PHP.
# www.cs75.net
<VirtualHost *:80>
CustomLog logs/www.cs75.net-access_log common
DocumentRoot /home/cscie75/srv/www/www.cs75.net/html
ErrorLog logs/www.cs75.net-error_log
ServerAdmin help@cs75.net
ServerAlias cs75.net
ServerName www.cs75.net
</VirtualHost>
<VirtualHost *:443>
CustomLog logs/www.cs75.net-access_log common
DocumentRoot /path/to/htdocs
ErrorLog logs/www.cs75.net-error_log
ServerAdmin dmalan@harvard.edu
ServerAlias cs75.net
ServerName www.cs75.net
SSLCertificateChainFile /path/to/gd_bundle.crt
SSLCertificateFile /path/to/cs75.crt
SSLCertificateKeyFile /path/to/cs75.key
SSLEngine on
</VirtualHost>
Comments (0)
You don't have permission to comment on this page.