The proper way to use the robots.txt file



Get Web Design Tips and Tricks on mps-web-design.com. The proper way to use the robots.txt file topic will increase your understanding on Web Design Tips and Tricks. We at mps-web-design.com only provide news, articles, information in Web Design Tips and Tricks. Web Design Tips and Tricks at mps-web-design.com provides the most up to date news and articles. If you have questions please do not hesitate to contact us.

When optimizing your web site most webmasters don’t consider using the robot.txt file. This is a very important file for your site. It let the spiders and crawlers know what they can and can not index. This is helpful in keeping them out of folders that you do not want index like the admin or stats folder or content that they can not index.

Here is a list of variables that you can include in a robot.txt file and there meaning:

1)User-agent: In this field you can specify a specific robot to describe access policy for or a “*” for all robots more explained in example.
2)Disallow: In the field you specify the files and folders not to include in the crawl.
3)# the number sign represents comments

Here are some examples of a robot.txt file for redball.com

User-agent: *
Disallow:

The above would let all spiders index all content.

Here another

User-agent: *
Disallow: /cgi-bin/

The above would block all spiders from indexing the cgi-bin directory.

User-agent: googlebot
Disallow:

User-agent: *
Disallow: /admin.php
Disallow: /cgi-bin/
Disallow: /admin/
Disallow: /stats/

In the above example googlebot can index everything while all other spiders can not index admin.php, cgi-bin, admin, and stats directory. Notice that you can block single files like admin.php.



Find Ugly Homes And Assign The Contracts. - Profit in real estate without cash, credit or risk. Learn how to make quick cash in real estate without owning property.
From The Ground Up:HowToShoot In The 70s. - Revolutionary new golf method that works on the premise of teaching the key Elements in the proper order.

Some simple suggestions

Well I don't consider myself an expert, I do have experience with working with larger datasets and there are a couple of things that I always do to keep queries performing well.

Optimize Queries with EXPLAIN

Explain is your friend, get to know it well. If you take the time to read thru the Explain documentation on the MySQL site, you will find some valuable information, some of which is hilighted below.

Optimizing joins

Single sweep what?

MySQL resolves all joins using a single-sweep multi-join method. This means that MySQL reads a row from the first table, and then finds a matching row in the second table, the third table, and so on. When all tables are processed, MySQL outputs the selected columns and backtracks through the table list until a table is found for which there are more matching rows. The next row is read from this table and the process continues with the next table.

Why is this important? Imagine a main table - tableA - with 80,000 rows of data. This table has a corresponding n:n table that maps entries in tableA with a locations table. A query could be written as:

SELECT tableA.*, locations.location from tableA 
Left Join tableA2locations on 
tableA2locations.tableA_id = tableA.id
Left Join locations on 
tableA2locations.location_id = locations.id
where locations.location = 'sometown'

Keeping the above quote in mind, MySQL will read a row from the first table and join the corresponding data from the joined tables for that row and then sweep thru the rest of the data, joining as it goes along.

This leads us into the following section.

Number of rows needed to execute a query

You can get a good indication of how good a join is by taking the product of the values in the rows column of the EXPLAIN output. This should tell you roughly how many rows MySQL must examine to execute the query.

From the above, you can determine that for a query on tables that have not been properly indexed, a join can quickly become unwieldy when dealing simply with three tables with records in the thousands (1000*1000*1000 = a slow query). See HackMySQL for a good example of this.

Reducing the number of rows needed to execute a query

So beyond indexing properly for joins, you can still end up with a query that runs in a way that causes a bottleneck.

Taking our example from above, imagine that we use a where clause that limits the tableA selection to half (tableA.foo = 'bar' below):

SELECT tableA.*, locations.location from tableA 
Left Join tableA2locations on 
tableA2locations.tableA_id = tableA.id
Left Join locations on 
tableA2locations.location_id = locations.id
where locations.location = 'sometown' and tableA.foo = 'bar'

This starts us out with 40,000 rows of tableA data to examine. If there are a further 2000 rows from tableA2locations, thats 800,000 rows of data. Not astronomical, but significant. If this was a 3 or 4 table join, things could get ugly. What to do? The answer may be obvious to some: select first with the most limiting table:

SELECT tableA.*, locations.location from locations 
Left Join tableA2locations on 
tableA2locations.location_id = locations.id
Left Join tableA on 
tableA2locations.tableA_id = tableA.id
where locations.location = 'sometown' and tableA.foo = 'bar'

This starts us out with 1 selection from the locations table, then 2000 from tableA2locations. If the join between tableA2locations and tableA is indexed correctly, we are then left with an index join based on ID, rather then having to initially select 40,000 rows from tableA as in the previous example.

When I first started programming, it made sense to me to select from the main table (tableA) and join the lookups. But once you add some data to the mix and start to play with Explain, you quickly realize that selecting from the limiting table can make your server's life a little easier.

For further reading on the topic, I always send people to HackMySQL when they ask, so for more tips and tricks, be sure to have a read thru the optimize section of that site.



Article Index: | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79


More Articles:


1. Five Easy Steps to Building a Website
Does the thought of learning how to set up a website or running an online business leave a big knot in your stomach? I know it did for me! I didn't know where to start, who to trust, how much money I needed to start an online business, and not too much about internet marketing either.Well, I'm here to tell you that it's all possible. Even if you're new to the internet marketing arena or if you have some previous marketing skills and/or experience. It doesn't matter. I'm here to help you get star…

2. Quality Graphics for your Web Site By Andy Eaton
For most people graphic design does not come easy. Unfortunately this is why there’s an abundance of shall we say “struggling websites.” At best, most are less than great. Graphics are the tools of your website that give your reader or potential prospect the visual they need to “see” what your site is all about. The graphics of your site must transform your written call to action into a live demonstration.To be effective you know your website must flow with well positioned and well relatin…

3. How to Set up Your Own Personal Website, without Spending Any Money
It has been my dream, right from childhood, to establish a great site, without spending any money. So I searched the web, for free domain names, free web hosting and free websites. I would like to share the results of my search with you. I have searched all over the web for free hosting. I have set up free sites in all of them. From this experience, I can confidently say that the two best free web hosting solutions are Tripod and Freewebsites In Tripod, you get a free website, http:yourname.trip…

4. Xml2PDF version 2.3 with support for WordML is released
Xml2PDF formatting engine version 2.3May 25, 2004Altsoft N.V.Altsoft N.V. is proud to announce the release of version 2.3 of its Xml2PDF formatting engine.The update includes:- WordML as a new input format;- support for fo:float in XSL-FO;- improved word and line stacking in all formats;- side floating is available in XHTML;- images can be used as a pattern in SVG;All editions of Xml2PDF formatting engine, which include Workstation, XmlSpy Plug-In, Hotfolder and .NET API, are automatically updat…