Forum Moderators: phranque
BTW, I'm not saying AT ALL that it isn't, and can't be done. I know it's possible and prevalent and even OPTIMAL. What I'm saying is the work that goes into creating a dyanmic site to be optimally search engine friendly is nearly eqivalent to creating static pages WITHOUT THE AID of a powerful, expensive, off-the-shelf content management system; something that most of us independent developers can't afford. I've been doing web development and SEO for over 10 years now. Not only do I have the experience to know, I have the ability to explain it.
It's just a non-issue. And all are built using free open source content management systems. So, not expensive, not difficult, not time consuming, and no work (on my part) to create the CMS.
No issue.
BTW, I'm not saying AT ALL that it isn't, and can't be done. I know it's possible and prevalent and even OPTIMAL. What I'm saying is the work that goes into creating a dyanmic site to be optimally search engine friendly is nearly eqivalent to creating static pages WITHOUT THE AID of a powerful, expensive, off-the-shelf content management system;
Unless what you mean is that it takes as much time to write good content for a dynamic site as it does for a static site, then this is total rubbish. However, if you've been at it for ten years and this is what you think, I won't try to convince you otherwise. Suffice it to say that I'd suggest readers of your comments seek second opinions before acting on your advice.
For the OP and anyone with an open mind who still might be having problems with the concepts here, there are two quite separate items being discussed:
With respect to item 1, no matter what technology you're using when you serve up an html page, it is still an html page (@abbeyvet: I may just change all of my file extensions to .monkey for the sheer, simple-minded hilarity of it...) Browsers, search engines and my grandmother either do not care at all about file extensions, or they care so little compared to other factors that it's simply not worth talking about:
For example, Google says [google.com]:
At Google, we're able to index most types of pages and files with very few exceptions.
The fact is that search engines are hungry for data--they need it--and they're not going to let a document served up as
text/html get away just because it has a funny extension. Item 2 is a little more complex, but not much. The point of contention here is that search engines have difficulty with urls with long query strings--in other words, urls like:
http://domain.tld/index.monkey?lorem=ipsum&dolor=sit&amet=consectetur There is some reason to think so as Google has specifically recommended [google.com] that long query strings be avoided:
Typically, URLs with 1-2 parameters are more easily crawlable than those with many parameters.
...and...
...because our web crawler could overwhelm and crash sites that serve dynamic content, we limit the number of dynamic pages we index
But these statements of Google's assume that dynamic content is detectable--and there is no particular reason why dynamic content (in the sense of pages generated from the results of a database query) should be detectable.
The most common strategy is to rewrite urls on a site using mod_rewrite [httpd.apache.org]. Mod_rewrite could (depending on the rules it's given) rewrite the above url to something like this:
http://domain.tld/ipsum/sit/consectetur/ This process is transparent to browsers, search engines, and my grandmother--the user experience simply is no different than browsing a site composed of files and directories instead of 'virtual' pages. A great number of free [typo3.org] content [joomla.org] management [plone.org] systems [bricolage.cc] have means (sometimes multiple means) of generating urls effectively indistinguishable from those of static pages.
Further, there are content management systems--such as bricolage, see link above--that achieve friendly urls by just publishing static pages.
With respect to the supposed 'difficulty' of seo-ing pages in CMSs, I will admit that SEO is not my field. Having said that, in a CMS such as Typo3 (the one I know best personally), creating nice, human-readable urls on a properly configured site is something that happens automatically when you give a page a title...
The overall point of this post, and my answer to the original question is that, done properly, there is no necessary browser, search engine or grandmother observable difference between static pages and pages served up from a database--anybody telling you otherwise is a shyster or just doesn't know what they're talking about.
-b
I never said anything about server side code not parsing standard html. And if code started spitting out .html files that were totally static and independent of the database, I wouldn't be having this discussion. There's absolutely nothing wrong with server driven pages but for SEO reasons I'd rather go with static htmls.
As a matter or preference I would like all my server driven pages to appear as static html pages because I believe they're easier to index. This may or may not be true, but its the choice that I make.
I'm happy that you have 5 sites that rank no. 1 - 3. Good for you. I think though that many other factors may have been involved besides the fact that they are asp's. You may have just got lucky or you may just have better content thats more relevant to a search.
Whatever it is, stop being so agressive and relax. I'm not here to convince anyone, preach or give advice. I just wanted to hear some unique opinions. (No shouting or screaming intended)
There's absolutely nothing wrong with server driven pages but for SEO reasons I'd rather go with static htmls.
Yes, but you still haven't said why. Without reasons, you may as well tell us that up is down.
As I've already pointed out, between the possibility of rewriting urls and the fact that a server generated page is just as much an html document as a static page is, there need be absolutely no discernable difference between static and dynamic pages.
-b
A spider will take longer to index dynamic pages than they would static pages. Its pretty obvious.
I'm not saying that they won't index any asp pages. I'm saying they prefer static html.
In order to for a dynamic page to display it has to pull information (sometimes a lot of information) from a database. Compare that to a static page that aldready has all the information ready.
Search engine spiders do not care how long your page takes to load [google.com]--as long as it loads:
Fiction: If my pages load slowly, that will hurt my site's rankings.
Fact: How fast a page loads does not affect its ranking. However, if your web server or connection is down or causes a page fetch to fail, that page won't be indexed.
You're talking about differences on the order of tenths of a second to render pages (if that, since most good cms software caches pages so each page is not built from scratch each time), which is only a very small part of the overall time it takes for a server to deliver a requested page.
A spider will take longer to index dynamic pages than they would static pages. Its pretty obvious.
Do you mean obviously false?
I'm not saying that they won't index any asp pages. I'm saying they prefer static html.
And I am telling you--again--that there is no such generalization that you can make. When it's done well, there is simply no indication that a page is or is not dynamic.
-b
Yes, search engines only spider parsed HTML. No matter what the extension, no matter how the content is pulled in, it is ONLY HTML. Yes, we know that and the fact has been established.
However, an page that doesn't have to call to a database, nor requires numerous variables in the URL to make the proper calls to the database stands a MUCH better chance of "pleasing" the spiders (for lack of a better, more technical term) than does a page that inherently takes longer to load and requires any number of variables in the URL. And THAT'S a fact.
However, an page that doesn't have to call to a database, nor requires numerous variables in the URL to make the proper calls to the database stands a MUCH better chance of "pleasing" the spiders (for lack of a better, more technical term) than does a page that inherently takes longer to load and requires any number of variables in the URL.
*sigh*
Ok then. Barring some dramatic development, this will be my last post in this thread. Others posters have responded with reasons to doubt the things you're saying, but you just keep insisting that you're right anyway.
Summary:
But urls can be rewritten...
But you don't provide any indication that you've tested or researched this and found a significant penalty. Where are the benchmarks that allow this to be stated as a general rule? Neither search engines nor users care about a difference in page load time of some number of milliseconds--mainly because, as previously stated, this is a very small part of the total amount of time it takes to request and download a page. I'd be willing to bet that proper benchmarking would show that the difference between two or three poorly optimized images and well optimized ones makes a far greater difference than the difference between static and dynamic pages.
-b
By its very nature, an HTML page loads smoother and faster than it's identical, dynamic counterpart.
truthiness refers to the quality of preferring concepts or facts one wishes to be true, rather than concepts or facts known to be true
I HAVE run tests to compare times of static HTML pages to identically parse dynamic pages, and depending on the servers being used, there is always a difference, and most of the time its significant.
Hey, by all means generate your 10,000 flat files in Notepad for all I care :) <snip>
[edited by: physics at 5:21 pm (utc) on Feb. 2, 2006]
[edit reason] Be respectful of others here please [/edit]
If there is a *noticeable* difference in load times from a static vs dynamic page, then the programmer sucks...
The reasons: I'm on a crap server that won't install a url rewriter, and they only have access db (access can't handle very many connections.) and my boss won't change servers. So I need to speed things up.
Also dynamics pages with a query ( links.asp?id=1000 ) take years to get a google PR. Most people want to swap links with a page that has a good PR.
I found this page that will convert dynamic pages into static html pages.
[techliberty.com...]
Have emailed them about there script, but haven't heard back yet.
Has anyone else found a script like this?
using System.Net;
using System.IO;
WebRequest wr = WebRequest.Create("http://www.google.com");
WebResponse response = wr.GetResponse();
string result = string.Empty;
using(StreamReader sr = new StreamReader(response.GetResponseStream()))
{
string result = sr.ReadToEnd();
}
//Write your HTML file now with the contents of the 'result' string..
<%
Response.Expires = -1
URLToRSS = "http://www.YourDomain.com/YourPage.asp"
Set xmlHttp = Server.CreateObject("MSXML2.XMLHTTP.3.0")
xmlHttp.Open "Get", URLToRSS, false
xmlHttp.Send()
strHTML = xmlHttp.ResponseText
Set fstemp = server.CreateObject("Scripting.FileSystemObject")
Set filetemp = fstemp.CreateTextFile("YourPage.htm", true,true)
filetemp.Write(strHTML)
filetemp.Close
set filetemp = nothing
%>
second : Convert all your asp page response.write or etc to asp expression so that all of outputs ara collected in an asp variable and then ,at the end of page write this variable as a HTML page to server.For example if this is your asp page:
<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<%response.Write("Hello word")%>
</body>
</html>
first:easer to implement,Slower in run
Second:Hard to implement,speed in run