Archive for the ‘Useful Stuff’ Category

HTTP Fingerprinting with HttPrint

Wednesday, March 30th, 2011

HttPrint is a web server fingerprinting tool by Net Square. It reveals all the details about a web server and it makes a pretty decent conclusion what the web server used. Identification is based on the implementation differences in the HTTP protocol.

In a previous post I have discussed server masking as a way to protect you against crackers and potential threads. This tool kind of goes the other way around. There are two ways to look at it: one – as a weapon for crackers; two – as a way for you to make sure that you masked your server properly and there are no giveaways to your doings.

HttPrint goes beyond the banner string of a web server and looks at other characteristics before it jumps into conclusions. The tool looks at the HTTP protocol’s behavior and the way it is implemented by the server. This includes HTTP header field ordering, forbidden operation response, improper HTTP version response and improper protocol response.

Another giveaway it notices is the default usage of eTags on some servers. I don’t think they are actually using this as a signal at the moment, but it is a good giveaway. Lighttpd usually has this enabled by default, as for Apache, you need to turn it on manually.

One of the other great features of the tool is the html reports. When will that come useful? Well, when you are running the console version (probably automated) and you would like to see eye-friendly reports in your browser. You will also get the percentage of the results’ accuracy. They use multiple signals, so results might or might not be true, but they will surely be enough to be at least an educated guess.

According to the developers of mod_security, they can successfully fool HttPrint, which to me sounds like a relief. After all, this is mostly a defensive security measure.

If you need your server protected and accurately monitored for any suspicious behavior, drop us a line and we will come up with a great plan, depending on your server monitoring needs.

Custom Error Pages

Tuesday, March 22nd, 2011

As you most probably know, each year we have several seasonal report periods during which we monitor the leaders in the retailing industry to see if their online performance matches their reputation. This year is no different and last month we published the results for this Valentine’s day online retailer monitoring.

One of the interesting cases that caught our attention is the site of Victoria’s Secret. While at first glance their uptime does not strike the user with a 100% uptime percentage, the downtime recorded for their transaction happened regularly (every 2 days), always around 5 am and lasted usually for about 15 minutes. Since 5 a.m. is clearly not the busiest shopping time of the day, it was most likely a regular, scheduled site maintenance. However, this was not indicated either in their error message or elsewhere on their site. Instead, next to the picture of the stunningly beautiful Alessandra Ambrosio stood the awkward downtime excuse “We’re sorry, our site is temporarily unavailable.” .

This instance got me thinking about the importance of customizing the error pages which your customers will inevitably run into sooner or later, be it due to site maintenance or a navigation error. In the example above, if the company had simply changed the message and informed their customers that this was a planned maintenance, their uptime percentage will have reached the 100% limit.

Customized error pages help you retain your visitors and even help you attract new ones which have landed on your page by sheer force of chance and typing mistakes. Most visitors leave the site when they get to an error page, and only a handful will try a different URL. That is why the custom page should provide the clients with:
  • the correct page that they might be looking for,
  • a search engine that will help them find their required page
  • a sincere and/or fun explanation or image.

The customized error page is a great way to reassure your visitors that they have come to the right place. Furthermore, it gives your future prospects one more reason to remember your website and return to it and even recommend it later.

Aside from helping you save face, a customized error page can help you monitor your visitors behavior and see what kind of information the people are looking for on your website. All that you need to do is to set the error page to submit a broken link to the webmaster. In this way you will be able to fix and upgrade your website accordingly and in a timely manner. Another plus side is that custom 404 pages help the search engines consider these pages not as error pages when they are set to return a 200 OK response in the header. As a result they get indexed and appear in the SERPs. Keep in mind that this is not a very good practice as the 404 status should be indicated in the header in such cases.

Below you can see 15 original and fun examples of custom error pages. If you would like to see even more, we recommend clicking here and here.

 

clomid, synthroid, zithromax, accutane, celebrex

What Is That Clicking Sound?

Friday, February 25th, 2011

Nothing lasts forever. Server systems don’t last forever. While monitoring can prevent major problems, alert about possible issues and help troubleshoot a system it won’t save your hardware from giving up at point. Fortunately, everything is replaceable. Except you data, that is.

Professionals implement various solutions to prevent data loss due to hardware failure. Some systems run multiple data storage units with the same information (RAID). Others perform frequent backups to more than one medium. Regular users and small companies rarely do backups or run hardware systems with more than one hard drive, for their basic needs. In this case “basic” covers casual office work, small client databases and such.

When you are on a tight budget and your hard drive fails, there are a few ways to go. More of them lead to either data loss or a very expensive recovery. Thanks to the educated, sharing people on the Internet there is a way to do around options and perform the recovery on your own. Again, this is advisable only if you can at one point go without the information on that storage unit.

The guys at MyHardDriveDied have great resources which will help you understand the mechanics of a hard drive and educate you about the seriousness of your problem. Once you have that covered you will be able to take the right decision and decided whether to go ahead and try the repairs yourself.

Here is one good list of tested software, which the guys used to perform simpler data recovery. You should also take a look at this flow chart to see if you can troubleshoot the problem yourself

If you have a ruined hard drive somewhere near, try it on it first. My advice is – start as a hobbyist and don’t try any serious data recovery for a while. Now, if you excuse me, I’m about to get my hands dirty with a couple of pre 2000 hard drives. They are for an amateur web server project, built from pre-2000 components.

When was the last time you had major hard drive issues?

Reduce Your Power Consumption

Thursday, February 24th, 2011

 

How can you run a server and still feel good about your energy bill and the environment? That is a hard one, because no matter whether you are running a server for business purposes, or a personal project, the power company bill arrives at the same time every month. Here are a couple of things anyone can do to improve the situation. These are applicable to both home users and people running one or more servers.

Modest hardware updates

CPU
Find out if you can do reasonably-priced upgrades. If you are able to buy a CPU, which uses less power, but provides the same performance – do so. New CPUs pop up all the time. One good preemptive action against fast changing technologies is to purchase a good board. Spend more on it and it will pay off with better CPU support. One example is the Phenom II x4. Mid-range priced AM3 motherboards supported all x4 processors. Currently the same motherboards support x6 CPUs. You might spend a bit more on the x6 CPU, but second hand prices for x4 are still very good, so here are another 2 core out of nothing.

HDD/SSD
Despite what you may think, Solid State Drives are not a good upgrade when it comes down to power consumption. The price tag on those is pretty high too. SSD drives consume just as much power any modern HDD. If you think of switching solely for power saving then don’t. If you are into better performance, while not being bothered with the smaller size, then go ahead.

PSU
More efficient Power Supply Units is probably the most overlooked topic in energy efficiency. Higher efficiency PSU means that more power goes into your machine and less power dissipates in heat. There is a pretty good comparison over at SilentPCReview.com. Spend more on an 80 PLUS Power Supply. They come at different specifications, but the 80 PLUS Bronze seems reasonably priced.

GPU & Other Hardware
Amateur projects and simpler installations can’t utilize the GPU as a vital source of computation power. Removing any video hardware is highly advisable. If you don’t feel like removing the graphics card once you are able establish SSH connection, then consider purchasing a motherboard with integrated GPU. If you have any hardware which you do not use, take it out (sound cards, DVD drives, etc.).

Cooling
Fanless designs in such cases are rate, but if you can go without the CPU fan in favor of a better heat sink and good chassis ventilation, then do so. It won’t save much, but efficiency freaks will have a blast out of the several watts saved. There are many advantages to fanless designs in terms of system stability, noise levels, amortization and maintenance.

Consolidate Servers

A lot of CPUs and motherboards support virtualization. Why not consolidate multiple servers into one machine. If your have a bunch of servers with non significant load, then put them on a single machine.

Track Down Unwanted Services and Applications

There is actually one great little utility to help you out with that. It is called PowerTOP. It will help you indicate CPU demanding processes. It will let you know which process is misbehaving and will offer tuning suggestions for your consideration. It is not a magical tool, but it will help you cut back on wasted CPU time.

A machine consuming less power usually means a machine producing less heat. This prolongs the life of your components and with fewer components in a server there is less to go wrong. You might also want to get a Kill-A-Watt meter to measure your progress.

Who Tweets? – Servers Do!

Friday, February 18th, 2011

Twitter has many faces. People tweet about anything really. There are those who find it entertaining. On the other side, many people can’t make heads or tails out of it. We also have the numerous business accounts trying to inform the world about their service. Due to its simplicity, there are a lot of ways to use Twitter. One more recent approach is to use Twitter to keep an eye on your server.

You can have your sever tweet. Now that is an idea to keep your mind occupied and by “occupied” I mean to make you wonder what the practical use of it will be. It might look illogical to have your server spam the web with random updates on its status. People are rarely interested in such information. Fortunately, people have little to do here. Letting your server tweet about itself can be a great way to keep and eye on it by using no special app but rather your browser or tweet client.

This is a great way to check on your server’s load and uptime. You can actually go beyond that and get all kinds of statistics. Current CPU load, temperature, space available, utilized bandwidth, hours online, etc. You can get any information about your machine and have it tweeted to you. For those of your wondering – no, that does not make our service obsolete. Server tweets can give you valuable information about the server uptime and load, whereas we give information about the global availability, access times, send out alerts when downtime appears and can detect network problems :) .

Assuming you are running a Linux server, here is a weekend project from Linux.com. When you get it up and running you will be able to get various data about your machine. You will be able to decide whether you like the updates to be public or private. You will then be able to get frequent updates on your servers’ status even on your mobile phone.

Here are some examples of servers going live on Twitter:

http://twitter.com/THIS_SS

http://www.twitter.com/ConSenseServer

The idea of getting server updates with Twitter is still young. A skillful administrator can probably get a bit more out of it. For example, get conditional alerts when server load is high, space is running low or temperature is abnormal. As I said above, Twitter’s simplicity allows many implementations. If you have tried it, feel free to share your experience with us in the comments section below.

Lighttpd

Friday, February 11th, 2011

Recently we witnessed a website becoming inaccessible for about 10 minutes. It doesn’t sound that bad, if it were a regular site. The problem comes from the fact that this site had only one purpose – to record the votes for a TV contest with a limited voting timeframe of 10 minutes.

This could have been avoided easily with no extra expenses for server hardware or premium hosting service. They only had to use Lighttpd, a lightweight open-source web server. After all, they only had to serve these 2 pages, one holding the voting options and one more to let you know that your vote was submitted.

Lighttpd is very efficient when it comes down to dealing with a lot of queries. It outperforms Apache on almost every test. Actually, it is so good that YouTube and Wikipedia use it.

Wikipedia is entirely served by Lighttpd and YouTube use it to server static content. Also it is the server of choice for every known torrent tracker out there.

Lighttpd is able to beat Apache because it of its architecture. Unlike Apache, Lighttpd is an asynchronous server. This architecture allows tens of thousands of queries to consume only a small part of your server’s memory. In the same scenario Apache might consume most of what your hardware has to offer. This is the main reason the TV contest voting went down. It was able to receive only a certain amount of queries, dropping all the others.

One more thing I personally enjoyed when installing this web server is that it had built-in support for eTags, which was also enabled by default.

If you like to run a reliable server and are limited by your current hardware, Lighttpd might level the playing field for you.

clomid, synthroid, zithromax, accutane, celebrex

GPU Computing

Thursday, January 20th, 2011

GPU Computing is “the new thing” that is gaining popularity amongst all areas of computing. Graphic cards are now increasing the power of modern data centers, bringing super computer performance to workstations and even aiding tasks on regular desktop computers.

This is important. We fit greater performance in the same physical, while cutting back on utility bills space, thus increasing the efficiency of our hardware. An Australian super computer is now considered the greenest one in the country, only because of its efficiency – 555.5MFlops/Watt. Increasing efficiency in one way to lower the carbon footprint and it looks like it works for them.

IBM is also implementing the technology in their servers. It looks like this is only going one way and we are going to see more of vendors going the GPU way.

Not too long ago NVIDIA announced their personal supercomputer, called TESLA. With it you can have over 3.7 Teraflops under your desk. It sounds like overkill for regular users, but it is every professional’s dream, especially when the advertised price is below 10,000 USD.

The common PC user can also benefit from having a good graphics card. Applications supporting GPU utilization are emerging. One application making particularly good use of GPUs is BOINC. It can use new NVIDIA chipsets and a good set of ATI products.

To the regular user, to you and me, GPU computing means better web experience in a few short years. Better performance and efficiency will improve the performance of a lot of services on the web and make our lives a bit better. Higher efficiency is one main prerequisite for lowering prices on web services, so we won’t be surprised to see some improvement there as well.

What we, at WebSitePulse, really hope to see is more powerful stable servers and less downtime due to server bottleneck.

clomid, synthroid, zithromax, accutane, celebrex

WordPress – Outgrowing Its Shoes

Wednesday, January 12th, 2011

WordPress only used to be a blog platform. It is evolving past that and is becoming the CMS of choice for a lot of small business projects and personal sites. Once installed, it will rarely cause your site to go down because of unexpected software related errors.

How did this happen? Why did this happen? It happened simply because it is a great-looking, user-friendly CMS and it is free. It allows you to alter templates, it is supported by numerous plugins and it gets the job done in no time. You can now use it as your personal blog and your business site. You can even sell products online, depending on the theme you purchase.

Apart from being free, it is also very well supported. It is a good time to remind you to install the latest security update. While being frequently updated and maintained, it still requires some attention from your part. The platform is light and can do more than just server updates about your latest travels and personal life. One particularly good framework I recommend you to checkout is Genesis, by StudioPress. Despite of being a very well organized and fairly customizable CMS it still can’t do the job osCommerce can, but then again osCommerce can’t do what WordPress can.

WordPress can meet most of your web publishing needs and we can make sure that everything you publish remains online. Do you run your business site on WordPress? WordPress might be great, but server uptime will never reach 100%. So why don’t let us keep an eye on it?

Quick Tips on Website Maintenance

Friday, October 8th, 2010

When are you performing your next website maintenance? It is night time, yes? Well, let us give you a few pointers on how to do it more smoothly.

Any intentional website downtime requires that you consider 4 main parties – your partners, your current and prospective users, and the search engines. Luckily, the tips below cater to all three.

Scheduled website maintenance

This one is really a no-brainer, however you will be surprised how many small and mid-sized businesses overlook this. People relying on your service need to be well aware that at some point in time they won’t be able to access your site. You can schedule your maintenance and warn them with a short message on your site, or by sending them a newsletter. I personally advise you do both. Don’t forget, we are talking about your most trusted audience here. You are doing this for the people most passionate about your product or service.

Check your server logs before you start

The best time to perform any changes that may result in considerable website downtime is the time of day when you get the least traffic. This helps in two ways. First -  you affect as little people as possible. Second – any unforeseen problems and extended downtime can be resolved before “working hours”, when you are most likely to lose business. Information of your website’s utilization are quite handy in this case. All the information you need is there. Unfortunately, performing website maintenance in the least busy period of time most likely means you won’t be getting a lot of sleep that night. Then again, it all depends on your audience. The greatest advantage of performing any major changes, in that manner, is that it is less likely for you to lose on your first time visitors. Like they say – “You only get one chance to make a first impression”.

Use 503 HTTP status code

This is not only very good for search engines, but it is in general a good practice to follow. 503 is your website’s way to tell a search engine “Hey, I’m a bit busy at the moment, please come back in an hour.”. This makes all the difference to search engines. You are not giving back a 404 error code, but a tidy little page, saying you are out for a while, but you will be back soon. Actually, what the engine reads is the response header. There you can specify the exact amount of time for which your service will be unavailable. The search engine bot will come to your site, receive the 503 status, and will quietly come back in a few hours to get the job done.

Since blogs are as popular as ever, many people requiring only a small site often go for a blog. Usually that blog is WordPress. There is this great plug-in you can use to give 503 status to search engines, when you are about to tinker with your site. It is called Maintenance Mode. It is probably one of the most useful WordPress tools I ever came by.

If you have any tips of your own, or would like to share a story, feel free to leave a comment.

5 Easy Ways to Improve the Performance of Your Site

Thursday, July 22nd, 2010

In this blog we’ve already discussed the importance of response time. And I hardly need to tell you that when a website loads slowly… um, well, you’d rather take your business, reservation, purchase or pleasure somewhere else. So, now that you have your website up and running, you definitely don’t want it to be an underachiever and drive those potential clients away simply because it fails to load properly. So here are 5 simple ways to improve the performance of your site without too much effort.

 

1. Minimize the HTTP Requests

Why is it important? The answer:  the greater part (and I mean like 80%) of the response time is spent downloading the front-end components of the page – images, scripts, CSS and so on. Therefore, fewer components to download mean fewer HTTP requests and this, on the other hand, means faster response time of your page.
How to do this? Use combined files, CSS sprites and Image Maps. You may find them a little challenging in the beginning, but if you really want your site to perform well, this is the first starting point.

 

2. Compress to Impress

Why is it important? To put it simply, compression helps decrease the response time of a site by reducing the size of the HTTP response.
How to do this? The most popular method is Gzip. It helps you reduce the response size by almost 70%. Generally, servers choose what file types to Gzip. And while most sites Gzip their HTML content, you can take it one step further and compress even your scripts and stylesheets. This will reduce the weight of your site and significantly improve user experience.

 

3. Minify the JavaScript and CSS Documents

Why is it important? To minify means to remove all the unnecessary characters from the source code without losing any of its functionality. This method works especially well for JavaScript documents as it reduces the size of the downloaded file and this, in turn, has a direct effect on your website’s response time.
How to do this? Well, you can always do it manually… But why bother, when now you have such good tools like JSMin, Packer and YUICompressor, which can even compress your CSS files.

 

4. Stay Away from Redirects

Why is it important? Unless absolutely necessary, avoid redirects as they notably slow the response time. This happens because during the redirection nothing in the page can be loaded until the HTML from the new location arrives.
How to do this? Very simple – just don’t insert any redirects unless you have to.

 

5. Monitor Your Server Performance

Why is it important? Even if you have the best performing and most beautifully and efficiently designed site ever, if your server is not working… well, you can do the math.
How to do this? The answer: here.

 

 

To read more useful tips on site optimization visit the Yahoo!Developer Network and Six Revisions sites.
You can also share also your own tips in the comments below.