Deprecated: mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead in /home/a26f9f83/public_html/articles/includes/config.php on line 159
Web Standards > NetSparsh - Viral Content you Love & Share

Web Standards

HTTP Protocol

The web is run on port 80. You are probably wondering what "port 80" is, right (whether you actually are or not is irrelevant)? Well, the answer is easy (not really). See, the Internet and the web are different. The Internet is the infrastructure (ie the physical wires, the server hardware, etc) and the web is the ideas and the software. I say ideas because before the web the Internet was a mess of wires and powerful computers using POP3 and SMTP for communication, FTP for file transfer, and TELNET for remote shell access, among others. Then the web came along, and Internet use spread to the home and all across the world. See, in plain terms, a web server broadcasts HTML to all connected clients on port 80, so port 80 is the "HTTP port." HTTP is the protocol, or set of standards for port 80 and its software. The client software is your browser, (ie probably Internet Explorer but hopefully Firefox), and the server is something like Apache or IIS(uug). This relates to hacking, as you will see later, but first you need to know more about HTTP. (the spaces before the < & > are put in so this isnt thought of as HTML)

< html >

< body >

< img src="image.png" >< br >

< div align="center" >text< /div >

< /body >

< /html >

If Apache is serving that, and Firefox picks it up, It will replace the < img src... etc with the image found at image.png relative to the working directory of the page requested, (ie ./, current dir), and the < div... is turned into text printed in the middle of the page. Since the code is processed from top to bottom, the br means that the browser should skip down one line and start the rest from there. The top two and bottom two lines tell the browser what part of the page it is reading. You migh have noticed the < /div >, the < /body >, etc. They "close" the tag. Tag is a term for anything in s, and they must be opened (ie introduced) and closed (ie < /tag >). If you want to learn HTML tagging, just head over to our close friend Google and do a search.

Since you haven't gotten to the programming section, and currently I have not even wrote it, I will show you a web server example in the simplest form I can think of that will work on any OS you are currently using. So the obvious choice is JAVA:

import java.net.*; import java.io.*; import java.util.*;

public class jhttp extends Thread {

Socket theConnection;

static File docroot;

static String indexfile = "index.html";

public jhttp(Socket s) {

theConnection = s;

}

public static void main(String[] args) {

int thePort;

ServerSocket ss;

// get the Document root

try {

docroot = new File(args[0]);

}

catch (Exception e) {

docroot = new File(".");

}

// set the port to listen on

try {

thePort = Integer.parseInt(args[1]);

if (thePort < 0 || thePort > 65535) thePort = 80;

}

catch (Exception e) {

thePort = 80;

}

try {

ss = new ServerSocket(thePort);

System.out.println("Accepting connections on port "

+ ss.getLocalPort());

System.out.println("Document Root:" + docroot);

while (true) {

jhttp j = new jhttp(ss.accept());

j.start();

}

}

catch (IOException e) {

System.err.println("Server aborted prematurely");

}

}

public void run() {

String method;

String ct;

String version = "";

File theFile;

try {

PrintStream os = new PrintStream(theConnection.getOutputStream());

DataInputStream is = new DataInputStream(theConnection.getInputStream());

String get = is.readLine();

StringTokenizer st = new StringTokenizer(get);

method = st.nextToken();

if (method.equals("GET")) {

String file = st.nextToken();

if (file.endsWith("/")) file += indexfile;

ct = guessContentTypeFromName(file);

if (st.hasMoreTokens()) {

version = st.nextToken();

}

// loop through the rest of the input li

// nes

while ((get = is.readLine()) != null) {

if (get.trim().equals("")) break;

}

try {

theFile = new File(docroot, file.substring(1,file.length()));

FileInputStream fis = new FileInputStream(theFile);

byte[] theData = new byte[(int) theFile.length()];

// need to check the number of bytes rea

// d here

fis.read(theData);

fis.close();

if (version.startsWith("HTTP/")) { // send a MIME header

os.print("HTTP/1.0 200 OKrn");

Date now = new Date();

os.print("Date: " + now + "rn");

os.print("Server: jhttp 1.0rn");

os.print("Content-length: " + theData.length + "rn");

os.print("Content-type: " + ct + "rnrn");

} // end try

// send the file

os.write(theData);

os.close();

} // end try

catch (IOException e) { // can't find the file

if (version.startsWith("HTTP/")) { // send a MIME header

os.print("HTTP/1.0 404 File Not Foundrn");

Date now = new Date();

os.print("Date: " + now + "rn");

os.print("Server: jhttp 1.0rn");

os.print("Content-type: text/html" + "rnrn");

}

os.println("< HTML >< HEAD >< TITLE >File Not Found< /TITLE >< /HEAD >");

os.println("< BODY >< H1 >HTTP Error 404: File Not Found< /H1 >< /BODY >< /HTML >");

os.close();

}

}

else { // method does not equal "GET" if (version.startsWith("HTTP/")) { // send a MIME header os.print("HTTP/1.0 501 Not Implementedrn"); Date now = new Date(); os.print("Date: " + now + "rn"); os.print("Server: jhttp 1.0rn"); os.print("Content-type: text/html" + "rnrn"); }

os.println("< HTML >< HEAD >< TITLE >Not Implemented< /TITLE >"); os.println("< BODY >< H1 >HTTP Error 501: Not Implemented< /H1 >< /BODY >< /HTML >"); os.close(); }

}

catch (IOException e) {

}

try { theConnection.close(); }

catch (IOException e) { }

}

public String guessContentTypeFromName(String name) { if (name.endsWith(".html") || name.endsWith(".htm")) return "text/html"; else if (name.endsWith(".txt") || name.endsWith(".java")) return "text/plain"; else if (name.endsWith(".gif") ) return "image/gif"; else if (name.endsWith(".class") ) return "application/octet-stream"; else if (name.endsWith(".jpg") || name.endsWith(".jpeg")) return "image/jpeg"; else return "text/plain"; }

}

I learned the basics of JAVA web server programming from "JAVA Network Programming" by Elliotte Rusty Harold. Now you don't need to know JAVA to be able to understand that, even though it might not seem like that at first. The important thing to look for when examining the code it the os.print("") commands. There is nothing fancy being used to get the data to the browser, you don't have to mutate the data, its sending plain HTML via a simple command. The plain and simple truth is that the browser is doing the majority of the difficult stuff, when speaking about this simple server. But in complicated servers there is server-side scripting, etc. Webs are much more complicated than just a simple server and Internet Explorer, such as Flash and JAVA Applets (run on clients machine in browser) and server-side stuff like PHP and PEARL (displayed on clients browser as plain HTML but executed as scripting on the server). T

he code above is a good way to learn the HTTP standards, even though the program itself ignores most of the regulations. The web browser not only understands HTML but also knows that incoming connection starting with 404 means that the page is missing, etc. It also knows that when "image/gif" is returned the file is an image of type gif. These are not terms the stupid server made up. They are web standards. Generally speaking, there are two standards. There is the w3 standard (ie the real standard based on the first web servers and browsers) and the Microsoft standard (ie the Internet Explorer, IIS and NT standards). The standards are there so anyone can make a server or client and have it be compatible with (nearly) everything else.

Hiding your Connection

If you have a copy of Visual Basic 6, making a web browser is easy, thanks to Winsock and the code templates included, so I will not put in an example of that. Instead I will explain cool and potentially dangerous things you can do to keep yourself safe. I know those words put together doesn't make sense (ie potentially dangerous and safe), but you will see in a moment. I'm talking about PROXIES. (anonymous proxy servers, to be exact). You connect to the internet on port 80 through the proxy server, thus hiding your real IP. There are many obvious applications for this, but it is also the only really potentially dangerous thing so far, so I will restate what I have written at the top: Whatever you do with this info is your responsibility. I provide information and nothing more. With that said, there is nothing illegal about using an anonymous proxy server as long as it is free and you are harming no one by using it. But if you think you are completely safe using one, you are deadly wrong. They can simply ask the owners of the proxy what your IP is if they really want to find you. If you join a high anonymous server, the chance of them releasing your IP is pretty low for something like stealing music, but if you do something that would actually warrant jail time, they probably will be able to find you. www.publicproxyservers.com is a good site for finding these servers.

The last trick related to web servers and port 80 is a simple one. First, find a free website host that supports PHP and use the following code:

If the address of this file is http://file.com/script.php, to download the latest Fedora DVD you would go to the following address: http://file.com/script.php?destfile=linuxiso.org/download.php/611/FC3-i386-DVD.iso &password=passwd

You can change "passwd" to whatever password you want. This will make any onlookers think you are connected to http://file.com. You are still limited to the speed of your connection, but you are using the bandwidth of the web host

Whatever you do with the above information is solely your responsibility.

Mike Vollmer --- eblivion
http://eblivion.sitesled.com

In The News:

This RSS feed URL is deprecated, please update. New URLs can be found in the footers at https://news.google.com/news

New York Times

Apple Watch Series 4 Review: Faster, Bigger, With a Promise to Be Healthier
New York Times
Sections. SEARCH. Skip to contentSkip to site index. Personal Tech · Subscribe · Log In · SubscribeLog In · Today's Paper. Advertisement. Supported by. tech fix. Apple Watch Series 4 Review: Faster, Bigger, With a Promise to Be Healthier. The faster ...
What the Surge in Apple Watch Popularity Says About Our CultureThe Mac Observer
Review: Apple Watch Series 4TechCrunch
A Week On The Wrist Apple Watch Series 4HODINKEE
USA TODAY -IMDb
all 350 news articles »

Chinese personal finance tech company X Financial prices IPO at $9.50 a share
MarketWatch
X Financial XYF, -20.20% priced its initial public offering at $9.50 per American Depositary Share on Wednesday, selling 11 million shares to raise $104.5 million, The Chinese tech-driven personal finance company is listing on the New York Stock Exchange.

and more »

New York Times

Windows on How Cities Change Can Be All Too Captivating - The ...
New York Times
Technology is crowding curbs with ride hailers and keeping homeowners fixated on housing values. Here are the tools that Emily Badger, a writer for The ...

and more »

WFXL FOX 31

Albany Tech faculty and staff participate in personal development training
WFXL FOX 31
The Professional Development Institute, done twice a year, is a chance for the Albany Tech leadership team to get together and learn new techniques. According to Dean of Academic Affairs Lisa Harrell, faculty and staff are learning new classroom ...


New York Times

The iPhone XS and XS Max Review: Bigger Is Now Definitely Better
New York Times
For the past few years, I have been a naysayer on one feature of smartphones: their growing size. My position was unusual given the increasing prevalence of larger screen devices. The world's top phone makers have all added more substantial glass ...
'An evolution, not a revolution': Apple's new iPhones score only slightly above the X in reviewsFinancial Post
iPhone XS and XS Max review: Apple's beautiful big-screen beasts exact a small ransomUSA TODAY
Apple iPhone XS and XS Max review: smoothed outThe Verge

all 1,236 news articles »

New York Times

When Cryptocurrencies Fluctuate, He Uses These Tech Tools to Keep Track
New York Times
How do New York Times journalists use technology in their jobs and in their personal lives? Nathaniel Popper, who covers cryptocurrencies and financial technology for The Times from San Francisco, discussed the tech he's using. There are many ...


Washington Post

Apple designer Jony Ive is 'zealous' over the tech giant's most personal device
Washington Post
“Apple's inception was about making tech useful and relevant, in a very personal way. And the watch is unambiguously the most personal product we make,” said Ive, who joined Apple more than 25 years ago and first made his mark with the candy-colored ...
$2000 iPhone — gulp. We break down the features and price points of Apple's new lineRegina Leader-Post

all 736 news articles »

NBCNews.com

Lawmaker says US Senate staff targeted by state-backed hackers
NBCNews.com
Foreign government hackers continue to target the personal accounts of U.S. senators and their aides — and the Senate's security office has refused to defend them, a lawmaker says. Sen. Ron Wyden, an Oregon Democrat, said in a Wednesday letter to ...

and more »

New York Times

Help a Fellow Mac User With Remote Tech Support
New York Times
Q. If Windows comes with tools to help someone take control and troubleshoot another PC over the internet, what does Apple provide for long-distance Mac-to-Mac support? A. Apple includes several ways to see and control the screen of another Mac over a ...
Prepare for changes to Back to My Mac - Apple SupportApple Support

all 24 news articles »

New York Times

Managing Manterruptions and Her Dog's Instagram
New York Times
How do New York Times journalists use technology in their jobs and in their personal lives? Jessica Bennett, gender editor for The Times, discussed the tech she's using. Before you joined The Times, you were a freelancer. What was your tech setup to ...

Google News

Do Higher Digital Camera Prices Mean Better Cameras?

Understanding digital camera prices makes finding the best camera value... Read More

Repairing A Corrupt .RAR/.ZIP Archive

Step 1:Open WinRAR and browse to the folder with your... Read More

Quick System Restore with ASR Backups

ASR (Automated System Recovery) is a feature available on the... Read More

Taking Advantage of the iPod Experience

Music lovers have been carrying around radios and other bulky... Read More

Is DVD Storage An Attractive Alternative For Your Computer Backup?

If you have a computer for home use or for... Read More

How To Speed Up Your Aging PC And Make It Healthier Too

With a little tweaking and with proper tools, you can... Read More

Deleting and Destroying Data Forever

Peoples' private information needs to stay private, even after it... Read More

New Computer? Steps to Protect Your Computer Before Connecting to the Internet

Getting a new computer should be an exciting and gratifying... Read More

Image Formats: GIF, JPEG, BMP

When browsing the internet you are likely to come across... Read More

5 Ways to Speed Up Your PC

No matter how fast your processor and regardless of how... Read More

Windows Task Manager in English

You use Ctrl+Alt+Del to see what's running on your PC,... Read More

Improve PC Performance - 6 Tips You Must Know

Are you frustrated with your PC?Is it feeling sluggish or... Read More

Tips for Buying a PC

Buying Your PCBuying a PC that's right for you and... Read More

Healthy Webmasters Choose Ergonomic Computer Products

Webmasters usually sit at their computers much longer in a... Read More

How To Safeguard Your Computer?

The following practice, if done regularly, may help you to... Read More

Flash Memory, Part I: MMC and SD

MMC and SDFlash memory is available in so many formats... Read More

Portable DVD Players - Things To Know

In my humble opinion nothing makes a long trip easier... Read More

7 Reasons NOT to Take Your Laptop on Holiday!

Heading off on vacation soon?Then perhaps you're tempted to take... Read More

Reliable File and Folder Sharing in Windows Xp

This tip is on sharing files and folders on a... Read More

HTML Explained: Part 2

Get started creating web pages using text files and HTML... Read More

5 Steps to Removing PC Clutter

It's hard enough as it is these days to get... Read More

Help, I Need a New HDTV! (Part 5 of 5)

Feeling overwhelmed in selecting a new TV? With all the... Read More

Selecting the Perfect Big Screen TV

Selecting a TV isn't as easy as it used to... Read More

How To Become A True CCNA

I've worked my way from the CCNA to the CCIE,... Read More

Protect Your PC from Viruses, Worms & Trojans

Each of the items in the checklist below is part... Read More