Monday, October 15, 2012

HTTP status codes

When a request is made to your server for a page on your site (for instance, when a user accesses your page in a browser or when Googlebot crawls the page), your server returns an HTTP status code in response to the request.
This status code provides information about the status of the request. This status code gives Googlebot information about your site and the requested page.
Some common status codes are:
  • 200 - the server successfully returned the page
  • 404 - the requested page doesn't exist
  • 503 - the server is temporarily unavailable
A complete list of HTTP status codes is below. You can also visit the W3C page on HTTP status codes for more information.
1xx (Provisional response)
Status codes that indicate a provisional response and require the requestor to take action to continue.
Code Description
100 (Continue) The requestor should continue with the request. The server returns this code to indicate that it has received the first part of a request and is waiting for the rest.
101 (Switching protocols) The requestor has asked the server to switch protocols and the server is acknowledging that it will do so.
2xx (Successful)
Status codes that indicate that the server successfully processed the request.
Code Description
200 (Successful) The server successfully processed the request. Generally, this means that the server provided the requested page. If you see this status for your robots.txt file, it means that Googlebot retrieved it successfully.
201 (Created) The request was successful and the server created a new resource.
202 (Accepted) The server has accepted the request, but hasn't yet processed it.
203 (Non-authoritative information) The server successfully processed the request, but is returning information that may be from another source.
204 (No content) The server successfully processed the request, but isn't returning any content.
205 (Reset content) The server successfully proccessed the request, but isn't returning any content. Unlike a 204 response, this response requires that the requestor reset the document view (for instance, clear a form for new input).
206 (Partial content) The server successfully processed a partial GET request.
3xx (Redirected)
Further action is needed to fulfill the request. Often, these status codes are used for redirection. Google recommends that you use fewer than five redirects for each request. You can use Webmaster Tools to see if Googlebot is having trouble crawling your redirected pages. The Crawl Errors page under Health lists URLs that Googlebot was unable to crawl due to redirect errors.
Code Description
300 (Multiple choices) The server has several actions available based on the request. The server may choose an action based on the requestor (user agent) or the server may present a list so the requestor can choose an action.
301 (Moved permanently) The requested page has been permanently moved to a new location. When the server returns this response (as a response to a GET or HEAD request), it automatically forwards the requestor to the new location. You should use this code to let Googlebot know that a page or site has permanently moved to a new location.
302 (Moved temporarily) The server is currently responding to the request with a page from a different location, but the requestor should continue to use the original location for future requests. This code is similar to a 301 in that for a GET or HEAD request, it automatically forwards the requestor to a different location, but you shouldn't use it to tell the Googlebot that a page or site has moved because Googlebot will continue to crawl and index the original location.
303 (See other location) The server returns this code when the requestor should make a separate GET request to a different location to retrieve the response. For all requests other than a HEAD request, the server automatically forwards to the other location.
304 (Not modified) The requested page hasn't been modified since the last request. When the server returns this response, it doesn't return the contents of the page.
You should configure your server to return this response (called the If-Modified-Since HTTP header) when a page hasn't changed since the last time the requestor asked for it. This saves you bandwidth and overhead because your server can tell Googlebot that a page hasn't changed since the last time it was crawled.
305 (Use proxy) The requestor can only access the requested page using a proxy. When the server returns this response, it also indicates the proxy that the requestor should use.
307 (Temporary redirect) The server is currently responding to the request with a page from a different location, but the requestor should continue to use the original location for future requests. This code is similar to a 301 in that for a GET or HEAD request, it automatically forwards the requestor to a different location, but you shouldn't use it to tell the Googlebot that a page or site has moved because Googlebot will continue to crawl and index the original location.
4xx (Request error)
These status codes indicate that there was likely an error in the request which prevented the server from being able to process it.
Code Description
400 (Bad request) The server didn't understand the syntax of the request.
401 (Not authorized) The request requires authentication. The server might return this response for a page behind a login.
403 (Forbidden) The server is refusing the request. If you see that Googlebot received this status code when trying to crawl valid pages of your site (you can see this on the Crawl Errors page under Health in Google Webmaster Tools), it's possible that your server or host is blocking Googlebot's access.
404 (Not found) The server can't find the requested page. For instance, the server often returns this code if the request is for a page that doesn't exist on the server.
If you don't have a robots.txt file on your site and see this status on the Blocked URLs page in Google Webmaster Tools, this is the correct status. However, if you do have a robots.txt file and you see this status, then your robots.txt file may be named incorrectly or in the wrong location. (It should be at the top-level of the domain and named robots.txt.)
If you see this status for URLs that Googlebot tried to crawl, then Googlebot likely followed an invalid link from another page (either an old link or a mistyped one).
405 (Method not allowed) The method specified in the request is not allowed.
406 (Not acceptable) The requested page can't respond with the content characteristics requested.
407 (Proxy authentication required) This status code is similar 401 (Not authorized); but specifies that the requestor has to authenticate using a proxy. When the server returns this response, it also indicates the proxy that the requestor should use.
408 (Request timeout) The server timed out waiting for the request.
409 (Conflict) The server encountered a conflict fulfilling the request. The server must include information about the conflict in the response. The server might return this code in response to a PUT request that conflicts with an earlier request, along with a list of differences between the requests.
410 (Gone) The server returns this response when the requested resource has been permanently removed. It is similar to a 404 (Not found) code, but is sometimes used in the place of a 404 for resources that used to exist but no longer do. If the resource has permanently moved, you should use a 301 to specify the resource's new location.
411 (Length required) The server won't accept the request without a valid Content-Length header field.
412 (Precondition failed) The server doesn't meet one of the preconditions that the requestor put on the request.
413 (Request entity too large) The server can't process the request because it is too large for the server to handle.
414 (Requested URI is too long) The requested URI (typically, a URL) is too long for the server to process.
415 (Unsupported media type) The request is in a format not support by the requested page.
416 (Requested range not satisfiable) The server returns this status code if the request is for a range not available for the page.
417 (Expectation failed) The server can't meet the requirements of the Expect request-header field.
5xx (Server error)
These status codes indicate that the server had an internal error when trying to process the request. These errors tend to be with the server itself, not with the request.
Code Description
500 (Internal server error) The server encountered an error and can't fulfill the request.
501 (Not implemented) The server doesn't have the functionality to fulfill the request. For instance, the server might return this code when it doesn't recognize the request method.
502 (Bad gateway) The server was acting as a gateway or proxy and received an invalid response from the upstream server.
503 (Service unavailable) The server is currently unavailable (because it is overloaded or down for maintenance). Generally, this is a temporary state.
504 (Gateway timeout) The server was acting as a gateway or proxy and didn't receive a timely request from the upstream server.
505 (HTTP version not supported) The server doesn't support the HTTP protocol version used in the request.
 https://support.google.com/webmasters/bin/answer.py?hl=en&answer=40132&topic=1724951&ctx=topic

Wednesday, October 10, 2012

Google Reveals Yet Another Domain-Related Algorithm Tweak


Google finally released its big lists of algorithm changes for the months of August and September. There are 65 changes on the lists in all. We’ll be discussing various components in different articles.

The first thing that strikes me about the two-month list is that the word “domains” is only mentioned once. We know that Google launched the “Domain Diversity” update in September, as Google’s Matt Cutts tweeted about it when it happened. Then, this past Friday, he also tweeted about the EMD update targeting exact-match domains. With both of these actually announced via Twitter, it seemed to indicate a new focus on domain-related signals from the search giant.

That’s why I’m a bit surprised that there aren’t more entries to this list that are directly related to domains. In fact, there aren’t even two (which would account for both of the ones Cutts tweeted about). Perhaps they didn’t bother to include them, because they thought the tweets were enough (though they still included a previously tweeted about Panda refresh).

Anyhow, here’s the one domain-related entry from Google’s latest lists, and it happened sometime in September, interestingly enough, under the “Freshness” project banner:

#83761. [project “Freshness”] This change helped you find the latest content from a given site when two or more documents from the same domain are relevant for a given search query.

So what do we know about how Google is treating domains differently now? For one, the domain name signal itself appears to have been reduced with the exact-match domain update. Google is wanting to show less results from the same domain in more instances (with the domain diversity update), and for search results pages that do still show multiple results from the same domain, Google is likely to rank the newer one higher (based on the listing above).

Matt Cutts Just Announced A Google Algorithm Change


Googles Matt Cutts just announced a new Google algorithm change via Twitter. He says it will reduce low-quality ’“exact-match” domains in search results.
It sounds like an extension of the last change he tweeted about, which was aimed at improving domain diversity. Here’s the new tweet:

Minor weather report: small upcoming Google algo change will reduce low-quality “exact-match” domains in search results.

New exact-match domain (EMD) algo affects 0.6% of English-US queries to a noticeable degree. Unrelated to Panda/Penguin.

Google is about due to publish its big list of algorithm changes for the months of August and September. When that happens, it will be interesting to see how many entries are related to domains. It seems like there are typically visible themes in the lists. For example, in the June list, there were a lot of changes related to improving how Google deals with natural language.

Google Launches New Page Layout Update

Google is on a roll with these updates. I think webmasters are starting to understand what Google’s Matt Cutts meant when he said a while back that updates would start getting “jarring and jolting”. It seems, that rather than one major update, we’re getting a bunch of updates in a short amount of time. This past Friday, Google launched its latest Penguin refresh. A week before that, it was the EMD update and a new Panda update.

The Page Layout update was first announced early this year, months before we ever saw the first Penguin update. It’s sometimes referred to as the “above the fold” update. It was designed to target pages that lack content above the fold. At the time, Cutts wrote in a blog post:

As we’ve mentioned previously, we’ve heard complaints from users that if they click on a result and it’s difficult to find the actual content, they aren’t happy with the experience. Rather than scrolling down the page past a slew of ads, users want to see content right away. So sites that don’t have much content “above-the-fold” can be affected by this change. If you click on a website and the part of the website you see first either doesn’t have a lot of visible content above-the-fold or dedicates a large fraction of the site’s initial screen real estate to ads, that’s not a very good user experience. Such sites may not rank as highly going forward.

We understand that placing ads above-the-fold is quite common for many websites; these ads often perform well and help publishers monetize online content. This algorithmic change does not affect sites who place ads above-the-fold to a normal degree, but affects sites that go much further to load the top of the page with ads to an excessive degree or that make it hard to find the actual original content on the page. This new algorithmic improvement tends to impact sites where there is only a small amount of visible content above-the-fold or relevant content is persistently pushed down by large blocks of ads. For more http://www.webpronews.com/google-launches-new-page-layout-update-yes-another-update-2012-10

Monday, October 1, 2012

Getting paid as a SEO/Web Designer

Communication is key

Right from the start, communication with your client is key to making sure everything runs smoothly.
  • Make sure you have a contract (signed by both parties) with a breakdown of how much and when each payment is to be made.
  • Always be up-front with pricing. Let your client know how much something will cost before you actually do it, even maintenance work for existing clients.
  • If contracting on hourly/daily basis, keep track of what you worked on that day. You never know when you might need it as back up.

Always get a deposit

You haven’t got a sale until money has exchanged hands. Once money is exchanged, both parties will take the project more seriously, and are now devoted.
Being self-employed you’ll struggle to wait until to end of a project to get paid, as in the mean time you have bills to pay and a life to live. Getting paid in stages and asking for an up-front deposit should be no problem to any genuine client.
I will usually ask for either a 50% or a 33% up-front deposit, depending on the size of the project. If 33% then there will be a second payment due mid-way through the project.

Payment on receipt of invoice

Generally in the world of business, you will usually have 30 days to pay an invoice. Some businesses might even allow 90 days, depending on how much money is involved. But again, being self-employed, 30 days is a long time to wait for the money you’ve been working so hard for.
I ask for payment on receipt of invoice i.e. right away. And in my mind I hope to receive the money within 2 weeks. Of course that’s not always the case.

Send reminders

Even good clients will forget; they have other things to do, other bills to pay and like everyone they will forget.
If after 2 weeks you have not heard from them or have not received payment, send a friendly reminder. And be sure to re-attach the invoice for convenience. If after 3 weeks you have received nothing, send another reminder and perhaps follow up with a phone call. If it gets to over 1 month with no payment, this is when you start to worry.

Method of payment

Again, be sure to include your preferred method of payment in your contract so there are no surprises.
PayPal
The beauty of PayPal is that it’s handy, and it’s instant (unless sending an eCheck). Also, a lot of online invoicing systems already integrate with PayPal, again upping the handiness factor.
The problem with PayPal is that they take a cut. A cut of between 3.5% and 4%. So if you’re getting paid £1,000, it’ll cost you roughly £40 getting paid with PayPal.
I tend to use PayPal for smaller amounts from remote clients.
Cheque
The good thing about a cheque is it won’t cost you anything (except maybe 20p for lodging into a business account).
However, if you’re getting paid internationally this can cause a problem as it can take forever to lodge your money (even up to 60 days as I once learned after receiving a cheque in U.S. Dollars). You also have to wait that little bit longer for it to arrive in the post, and you have to make the extra effort to go down to your local bank (all this time adds up).
I usually accept cheques from local clients.
Bank transfer
For me bank transfer is the best method of payment. I pass on my bank details to a client and they do a transfer. Usually takes 1 or 2 days, depending on local/international transfer. If your client has online banking it should be handy for them to make the payment also.
A bank transfer will usually cost for both sending and receiving. The cost varies from bank to bank, and depends on local or international payments, although I’ve found it pretty reasonable (e.g. it will cost me £6 to receive a transfer from an American bank).
Bank transfer is the typical method I use for larger amounts from remote clients.

Accounting

When I first started freelancing, I setup a business account separate from my personal account. I find this a very useful way for organising and keeping track of money, as I don’t really think of the business account as ‘my’ money.
Whenever payment comes in, I transfer two thirds of that payment into my personal account (both accounts are at the same bank so this doesn’t cost anything). I keep one third in the business account to cover tax, national insurance and business expenses.

When things go wrong

If you’re unable to get paid, the last resort is some sort of legal action. Thankfully I am inexperienced in this area. To date I’ve been able to get paid with no major problems. If you work with good people and use the tips above, hopefully you can avoid this too.

Don’t forget to Like My facebook Page Timani Technology  !  Consult with our SEO Consultants to evaluate your website or chat on  Skype: mukeshseo