Web technologies in a nutshell.
-
Clients (applications like browsers and spiders) interact with from destination servers (aka origin servers), usually web servers.
-
Common browsers in approximate order of importance include:
-
Internet Explorer (aka IE, MSIE) by Microsoft
-
Firefox and the Mozilla Suite by Mozilla
-
Safari by Macintosh. Get screenshots of sites as seen from Safari via iCapture [danvine.com/icapture].
-
Lynx. An all text browser.
-
Opera
-
Navigator by Netscape
-
Amaya by the W3C. Also an HTML editor.
-
Konqueror
-
A web server is typically a Windows server running IIS (Internet Information Server/Services) or a Unix machine running Apache. A web server serves the files and applications to users.
-
Information is passed between web servers and clients via the TCP/IP (Transport Control Protocol/Internet Protocol) family of protocols. See also OSI.
-
Clients connect to web servers in different scopes:
-
Through the Internet: Clients access all the public web servers linked together via the TCP/IP family of protocols to form the global network.
-
Through an intranet: Clients access private web servers, connected via the TCP/IP family of protocols, that is isolated from the Internet via firewalls. An intranet is like a walled neighborhood within the larger metropolis of the Internet. This is comparable to a WAN or LAN.
-
Through an extranet: An intranet accessed through the Internet. This is comparable to a VPN.
-
In the early days of the Web, web documents were just HTML (HyperText Markup Language). As the web progressed multiple technologies became tagged on to HTML:
-
HTML started using CSS (Cascading Style Sheets) to format the presentation of web pages.
-
HTML itself can be an XML (eXtended Markup Language) document which is great for transmitting and storing data, hence XHTML and the CSS-like XSL.
-
Client-side scripting can be used to program processing done on the client's machine.
-
JavaScript is the king of client-side scripting since Netscape only supported JS, while IE supported JS & VBScript!.
-
DHTML (Dynamic HTML) is the interactivity that results from using HTML as an OM (Object Model) combined with CSS and script to provide powerful dynamic client-capabilities in NS 4+ and MS IE 4+. Object can change properties, and added or removed, depending on events.
-
AJAX (Asynchronous JavaScript and XML) is like super DHTML that uses the XMLHttpRequest object to exchange data with the server in the background so that the user does not notice any round trips to the server.
-
Server-side programming can be used to program processing done on the server's machine.
-
In the old days, PERL script combined with CGI was the way to connect to databases over the Web.
-
JavaScript supports server-side scripting on Netscape servers such as LiveWire. This also covers NSAPI/ISAPI (Netscape or Internet Server Application Programming Interface).
-
As the web progressed, script (usu. VBScript or JavaScript) utilized in ASPs (Active Server Pages) became the way to connect to databases over the Web. ASP was interpreted, but later evolved to ASP.NET which is partially compiled as bytecode for a virtual machine and is faster than ASP.
-
PHP = PHP: Hypertext Preprocessor (Created in 1994 by Rasmus Lerdorf). Linux/open source equivalent of ASP. Influenced by C, PERL, and Java. PHP pages have extensions such as
.php, .php3, or .phtml.
-
JSP (Java Server Pages). Sun's equivalent of ASP.NET. Where as ASP pages use server side script, JSP calls upon server side Java servlets.
-
ColdFusion (created by JJ Allaire & Jeremy Allaire in 1995). A tag/XML based language for server-side applications. ColdFusion is unlike ASP and PHP (which are interpreted), but like ASP.NET and JSP (partially compiled as bytecode for a virtual machine). ColdFusion is also a set of products made by Allaire (-->Macromedia -->Adobe) for building and serving Web sites. Content is entered via user friendly ColdFusion templates and stored in a database. The content is then reassembled, structured, formatted, and administered via ColdFusion Studio. ColdFusion Server then uses CFML (ColdFusion Markup Language) to serve up the content dynamically. CFML is their particular mix of HTML and XML (Extensible Markup Language). ColdFusion can connect to different databases using OLE DB or ODBC. ColdFusion can also work with distributed components via CORBA and DCOM.
-
Multiple OMs (Object Models) are used and intermixed when developing web pages.
-
DOMs (Document Object Models)
-
DOM by W3C. DOM standards covering both HTML and XML.
-
Proprietary DOM implementations
-
JavaScript/Netscape Navigator DOM. Each JS version is tied to NN version.
-
DHTML/Microsoft Internet Explorer DOM. Inspired the W3C DOM.
-
VBScript and JavaScript have objects as part of their language.
-
ADO (ActiveX Data Objects) is one of many OMs used for accessing databases.
-
ASP Objects for IIS (Response, Session, etc.) are not to be confused the various installable component available for ASPs (EG: Ad Rotator).
-
All sorts of other objects, OMs, and components can be instantiated.
-
On the client's machine, the browser can call upon all sorts of plug-ins to support all sorts of files, from animation to video to Java applets running on a JVM (Java Virtual Machine).
-
On the server machine, all sorts of servers, components, machines, and languages can be utilized invisibly to make pages for clients. The pages may actually be the interface to an application so the company serving up the application may be known as an ASP (Application Service Provider).
Page Modified: (Hand noted: 2007-11-13 21:27:51Z) (Auto noted: 2010-12-24 22:46:12Z)