<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Studge &#187; SEO</title>
	<atom:link href="http://studge.com/category/seo/feed/" rel="self" type="application/rss+xml" />
	<link>http://studge.com</link>
	<description></description>
	<lastBuildDate>Wed, 17 Sep 2008 17:21:30 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Drupal SEO</title>
		<link>http://studge.com/drupal-seo/</link>
		<comments>http://studge.com/drupal-seo/#comments</comments>
		<pubDate>Sat, 12 May 2007 12:46:35 +0000</pubDate>
		<dc:creator>Studge</dc:creator>
				<category><![CDATA[SEO]]></category>
		<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://studge.com/drupal-seo/</guid>
		<description><![CDATA[Drupal is hands down my favorite content management system, but in order to use it there are a few initial steps you need to follow to get it working at our expected SEO performance level.
Note: This article will not cover the installation of Drupal. The first thing I do is turn on the clean URLs. [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://drupal.org">Drupal</a> is hands down my favorite content management system, but in order to use it there are a few initial steps you need to follow to get it working at our expected SEO performance level.<span id="more-49"></span></p>
<p><em>Note: This article will not cover the installation of Drupal.</em> The first thing I do is turn on the clean URLs.  This option is available when logged in as an administrator under Administer>Site Configuration>Clean URLs.  Drupal requires that you run the test first to determine whether or not your server is set up with PHP&#039;s <a href="http://en.wikipedia.org/wiki/Mod_rewrite">mod_rewrite</a> module.  This will enable the use of meaningful URLs, rather than PHP posting text.  To further compliment the use of clean URLs, we are going to install a Drupal module that will automatically name our posts and pages for us.  This module is <a href="http://drupal.org/project/pathauto">pathauto</a>, download the appropriate package and upload the <code>pathauto</code> folder into the <code>modules</code> folder on your server.  Be sure to enable it under Drupal&#039;s module section.  If you have already created content and are only now installing this module, then it is important that you navigate to the pathauto configuration section and have it bulk generate index aliases.</p>
<p>One problem with Drupal is the creation of duplicate pages.  For example: if you create a new post, then you will be presented with four different URLs for the same content:
<div class="code">
<pre><code>http://example.com/new-post

http://example.com/new-post/

http://example.com/node/2

http://example.com/node/2/</code></pre>
</div>
<p>This practice looks bad to search engines.  So, we need to edit our <code>.htaccess</code> file, located at the root of our webserver, to prevent it from using the trailing slash.  We will then edit our <code>robots.txt</code> file to prevent the search engines from indexing the <code>/node</code> area, thus preventing it from being an issue.</p>
<p>First we open out <code>.htaccess</code> file and add the following to the beginning of the file (replace <code>example\.com</code> with your domain name):
<div class="code">
<pre><code># remove trailing slashes
RewriteCond %{HTTP_HOST} ^(www.)?example\\.com$ [NC]
RewriteRule ^(.+)/$ http://%{HTTP_HOST}/$1 [R=301,L]</code></pre>
</div>
<p>Next we need to edit our <code>robots.txt</code> file to prevent the search engines from indexing our <code>/node</code> area.  Add the following line:
<div class="code">
<pre><code>Disallow: /node/</code></pre>
</div>
<p>That should take care of the basic SEO setbacks that come with a default installation of Drupal.  You may also want to implement the <a href="http://drupal.org/project/gsitemap">XML Sitemap</a> module to automatically produce a sitemap when new content is created.  It will also notify several search engines when it is updated.</p>
]]></content:encoded>
			<wfw:commentRss>http://studge.com/drupal-seo/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>301 Redirect and Dreamhost</title>
		<link>http://studge.com/301-redirect-and-dreamhost/</link>
		<comments>http://studge.com/301-redirect-and-dreamhost/#comments</comments>
		<pubDate>Sun, 25 Mar 2007 01:45:19 +0000</pubDate>
		<dc:creator>Studge</dc:creator>
				<category><![CDATA[SEO]]></category>
		<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://studge.com/301-redirect-and-dreamhost/</guid>
		<description><![CDATA[I recently needed to redirect a domain name to another domain name.  This was due to having both the .com and the .net extension.  I wanted to forward the .net domain to the .com domain.  Dreamhost provides a redirect option in their control panel.  I implemented this feature and then started [...]]]></description>
			<content:encoded><![CDATA[<p>I recently needed to redirect a domain name to another domain name.  This was due to having both the .com and the .net extension.  I wanted to forward the .net domain to the .com domain.<span id="more-33"></span>  <a href="http://www.dreamhost.com/r.cgi?208105">Dreamhost</a> provides a redirect option in their control panel.  I implemented this feature and then started testing it a bit &#8211; what I came to find out was not very encouraging.  If I typed in http://example.net/ in my browser, then I was flawlessly redirected to http://example.com/.  Great &#8211; that is naturally what I expected.  However, a problem arose when I went to specific locations of the .net domain.  </p>
<p>The domain had already been submitted to the search engines and, as such, had already been indexed.  This meant that there were locations that may be checked.  While using Dreamhost&#039;s redirect option, users trying to go to http://example.net/contact/ would be redirected to http://example.comcontact/.  This is, of course, a completely bogus URL and would return a page error.  Having a request redirected to a location like this would lower your sites standing in the search engines&#039; indexes.  The solution came by implementing my own <strong>301 Redirect</strong> in the domain&#039;s .htacess file.  I wiped out the existing .htaccess file from that domain (it was leftover from the previously installed CMS).  I then created a new one in its place that only consisted of the following one line:
<div class="code">
<pre><code>Redirect 301 / http://example.com/&lt;/pre&gt;</code></div>
<p>That was it.  After that, any specific requests sent to the .net domain were translated over to the .com URL and redirected accordingly.</p>
]]></content:encoded>
			<wfw:commentRss>http://studge.com/301-redirect-and-dreamhost/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

<!-- Dynamic Page Served (once) in 0.285 seconds -->
