<?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>Creating The Web... &#187; seo</title>
	<atom:link href="http://www.simon-jensen.net/tag/seo/feed" rel="self" type="application/rss+xml" />
	<link>http://www.simon-jensen.net</link>
	<description>Internet entusiast og webprogrammør Simon Jensen</description>
	<lastBuildDate>Fri, 19 Aug 2011 14:22:38 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Dynamiske URLer uden duplicate content</title>
		<link>http://www.simon-jensen.net/dynamiske-urler-uden-duplicate-content.html</link>
		<comments>http://www.simon-jensen.net/dynamiske-urler-uden-duplicate-content.html#comments</comments>
		<pubDate>Sun, 13 Apr 2008 11:23:17 +0000</pubDate>
		<dc:creator>Simon Jensen</dc:creator>
				<category><![CDATA[Udvikling]]></category>
		<category><![CDATA[htaccess]]></category>
		<category><![CDATA[mod_rewrite]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[seo]]></category>

		<guid isPermaLink="false">http://www.simon-jensen.net/dynamiske-urler-uden-duplicate-content.html</guid>
		<description><![CDATA[Som min gode ven Marcel Fuursted skrev om, for noget tid siden, findes der på mange dynamisk genererede sider, ofte problemer med duplicate content. Problemet findes i flere CMSer, webshops og ganske sikkert en del andre systemer, som automatisk genererer en URL til en &#8220;unik&#8221; side. Jeg vil ikke gå meget i dybden med begrebet [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Som min gode ven Marcel Fuursted skrev om, for noget tid siden, findes der på mange dynamisk genererede sider, ofte problemer med </strong><a title="Duplicate content og dynamisk søgemaskineoptimering." href="http://www.fuursted.net/dubplicate-dynamisk-seo.aspx" target="_blank"><strong>duplicate content</strong></a><strong>. Problemet findes i flere CMSer, webshops og ganske sikkert en del andre systemer, som automatisk genererer en URL til en &#8220;unik&#8221; side.</strong><em> </em></p>
<p>Jeg vil ikke gå meget i dybden med begrebet duplicate content &#8211; det er vidst <a title="Marcel Fuursted" href="http://www.fuursted.net/hvad-er-dublicate-content.aspx" target="_blank">beskrevet</a> <a title="Google Webmaster Help" href="http://www.google.com/support/webmasters/bin/answer.py?hl=en&amp;answer=66359" target="_blank">op til</a> <a title="Matt Cutts" href="http://www.mattcutts.com/blog/duplicate-content-question/" target="_blank">flere gange</a> &#8211; jeg vil lige forklare lidt om hvordan det kan opstå, for herefter at give et foreslag til hvor let det egenligt er, at komme ud over!</p>
<h3>Sådan kan duplicate content opstå</h3>
<p>Mange dynamiske sider henter deres indhold fra en database ved direkte, at lave en query med f.eks. et ID. Forestil dig URLen:</p>
<p><span style="font-family: Courier New; ">/index.php?pageID=123</span></p>
<p><span style="font-family: Courier New; ">index.php</span> kunne hente og udskrive indholdet fra databasen, hvor id er 123, ved følgende simple query:</p>
<pre>$ID = mysql_real_escape_string(<strong>$_GET["pageID"]</strong>); //secure string for DB
$query = mysql_query("SELECT content FROM content WHERE <strong>id</strong>=".$ID."");
$dbObj = mysql_fetch_object($query);
echo $dbObj-&gt;content;</pre>
<p><span id="more-107"></span></p>
<p>Ovenstående <em>vil</em> ofte virke som man regner med, men &#8220;<span style="font-family: Courier New; ">/index.php?pageID=123</span>&#8221; er langt fra den eneste URL der giver det forventede resultat. Hvad med følgende:</p>
<p><span style="font-family: Courier New; ">/index.php?pageID=123&amp;somevar=asdf</span></p>
<p><span style="font-family: Courier New; ">/index.php?pageID=123&amp;somevar=asdf&amp;someothervar=blabla</span></p>
<p><span style="font-family: Courier New; ">/index.php?pageID=123&amp;yetanother=irrelevant</span></p>
<p>Da alle ovenstående URLer har sat variablen <span style="font-family: Courier New; ">pageID</span> til 123, hvilket er alt hvad vores database query skal bruge, vil samtlige URLer give samme resultat! De efterfølgende variabler (<span style="font-family: Courier New; ">somevar</span>, <span style="font-family: Courier New; ">someother</span>, <span style="font-family: Courier New; ">yetanother</span>) er altså irrelevante, men linket <em>kan</em> stadig figurerer og virker altså lige så godt som den oprindelige!</p>
<h3>Sådan kan duplicate content undgåes</h3>
<p>Jeg har tidligere haft skrevet om <a title="Læs den tidligere post om &quot;mod_rewrite&quot;." href="http://www.simon-jensen.net/mod-rewrite.html">mod_rewrite</a> modulet til Apache, hvilket lader dig omskrive en URL, for herefter at parse denne til specifik fil.</p>
<p>Idag laver jeg ikke en PHP-løsning uden at bruge mod_rewrite, og løsningen ligger så meget op til, at man skal verificerer den indkommende URL, at duplicate content nemt bliver elimineret i processen. Det skal dog nævnes, at denne løsning også sagtens kan lade sig gøre, hvis du benytter URLer som i eksemplet ovenfor!</p>
<p>Jeg har til hver af mine poster et felt i databasen som indeholder den fulde URL (uden domænenavn) til hver post. I tilfældet af denne post, er værdien som du nok har gættet:</p>
<p><span style="font-family: Courier New; ">/dynamiske-urler-uden-duplicate-content.html</span></p>
<p>Når du går ind på denne URL, skal jeg for at hente indholdet, lave en query til min databasen. Da jeg ikke har en <span style="font-family: Courier New; ">pageID</span> variabel eller lignende, benytter jeg den fulde URL som identifyer (læs: id). Queryen kunne se ud, nogenlunde, som følgende:</p>
<pre>$url = mysql_real_escape_string(<strong>$_SERVER[REQUEST_URI]</strong>); //secure string for DB
$query = mysql_query("SELECT content FROM content WHERE <strong>url</strong>=".$url."");
$dbObj = mysql_fetch_object($query);
echo $dbObj-&gt;content;</pre>
<p>Prøver du at tilføje ekstra variabler til denne post, vil du se, at du får en 404 fejl. Dette gøres ganske simpelt, ved lige at checke om queryen også gav noget resultat, og hvis ikke, kaste en header med en fejlkode inden der forsøges at udskrive noget:</p>
<pre>//query goes here...
...
if(empty($dbObj)) {
    header("HTTP/1.1 404 Not Found");
    header("Status: 404 Not Found");
    exit();
} else {
    echo $dbObj-&gt;content;
}</pre>
<p>For at den besøgende ikke bare møder en kedelig standard 404-side, kan du designe en speciel side, som du vil bruge til dette formål &#8211; tilføj følgende linie i din  <span style="font-family: Courier New; ">.htaccess</span>, for at henvise 404-fejl til en speciel side:</p>
<pre>ErrorDocument 404 /404.php</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.simon-jensen.net/dynamiske-urler-uden-duplicate-content.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google foreslår cloaking</title>
		<link>http://www.simon-jensen.net/google-foreslaar-cloaking.html</link>
		<comments>http://www.simon-jensen.net/google-foreslaar-cloaking.html#comments</comments>
		<pubDate>Sat, 11 Aug 2007 10:54:08 +0000</pubDate>
		<dc:creator>Simon Jensen</dc:creator>
				<category><![CDATA[Alt Andet]]></category>
		<category><![CDATA[cloaking]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[seo]]></category>

		<guid isPermaLink="false">http://www.simon-jensen.net/google-foreslaar-cloaking.html</guid>
		<description><![CDATA[&#8230; sådan kan man i hvert fald nemt komme til at tolke Google Help for publishers i en post omkring indexering af indhold, der normalt kræver registrering af en eller anden form. Emnet går ud på, at mange sites kræver at man som bruger registrerer sig før man kan se noget reelt indhold, og da [...]]]></description>
			<content:encoded><![CDATA[<p>&#8230; sådan kan man i hvert fald nemt komme til at tolke <a title="Google Help for publishers - My site requires subscription or registration." href="http://www.google.com/support/news_pub/bin/answer.py?answer=40543&amp;topic=11707" target="_blank">Google Help for publishers</a> i en post omkring indexering af indhold, der normalt kræver registrering af en eller anden form.</p>
<p>Emnet går ud på, at mange sites kræver at man som bruger registrerer sig før man kan se noget reelt indhold, og da Googlebot, og andre søgemaskinerobotter for den sags skyld, ikke kan udfylde formularer eller gemme cookies, vil disse heller ikke kunne se specielt meget indhold. Selvsagt er der ikke meget for søgemaskinerne at indexerer, hvilket i sidste ende vil betyde mindre resultater i søgemaskinerne.</p>
<p><span id="more-77"></span></p>
<p>Som en løsning på dette skrives der på Google Help for publishers følgende:</p>
<div class="Quote">Given that, we need to be able to circumvent your registration page in order to successfully crawl your site. The easiest way to do this is to configure your webservers to not serve the registration page to our crawlers.</div>
<p>Men hov &#8211; dette er jo <a title="Læs mere om cloaking her." href="http://www.cloaking-system.com/dk/what-is-cloaking.php" target="_blank">cloaking</a>, om ikke andet <a title="Læs mere om IP-delivery her." href="http://www.cloaking-system.com/dk/ip-delivery.php" target="_blank">IP-delivery</a>, hvilket tydeligt fremgår af næste sætning:</p>
<div class="Quote">You can verify that the request is actually from our robot by making sure the IP address is within the range of 66.249.64.0/20. It’s equally important that your robots.txt file permits Googlebot to access your site.</div>
<p>Følger man disse guidelines, vil man kunne få flere sider indexeret, og almindelige brugere vil kunne finde flere resultater i søgemaskinerne. Benyttes disse resultater, vil brugere dog højst sandsynligt ende med at få serveret registrerings siden, da disse jo ikke er Googlebots eller forhåbentligt ikke har samme IP?! Her kommer Google dog med et par brugervenlige metoder &#8211; men det ændre ikke det faktum at metoden ligger op til brug af cloaking, for at få flere søgeresultater &#8211; hvilket jo er imod deres egne <a title="Læs mere om Google og cloaking." href="http://www.google.com/support/webmasters/bin/answer.py?answer=66355" target="_blank">guidelines</a>.</p>
<p>Men nu skal det jo ikke bare gå ud på at &#8220;slå google i hovedet&#8221;, det <em>må</em> jo også være svært at publiserer noget i så stor en organisation, uden at det på et eller andet tidspunkt kommer til at modsige noget andet?! Rent faktisk ser jeg nu ikke noget forkert i at gøre <em>som Google beskriver</em> det her &#8211; når blot metoden bruges ordentligt og reelt vel og mærket &#8211; og ellers ville der vel heller ikke være meget at komme efter i <a title="Gå til Cloaking System Aps." href="http://www.cloaking-system.com/dk/" target="_blank">Cloaking System ApS</a>?!</p>
<p>Jeg er med tiden, naturlig nok, blevet mere og mere interesseret i SEO, og glæder mig hver eneste gang jeg kan se, at et tiltag har givet porte. Derfor synes denne &#8220;hjælp&#8221; også at være specielt spændende, og lidt lusket &#8211; Hvad mener Google egentligt? Der er nok ikke nogen tvivl om, at deres generelle guidelines tæller højest, men samtidig bliver der jo sagt at cloaking rent faktisk giver flere indexerede sider &#8211; og det kan vi godt lide.</p>
<p>Hvad bliver moralen her til sidst, hvor jeg selv synes at være ved at falde over mine egne sætninger? Ikke andet end, at jeg synes det er spændende, at Google lige frem siger at cloaking <em>kan</em> give dig flere resulater&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.simon-jensen.net/google-foreslaar-cloaking.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>SEO for begyndere</title>
		<link>http://www.simon-jensen.net/seo-for-begyndere.html</link>
		<comments>http://www.simon-jensen.net/seo-for-begyndere.html#comments</comments>
		<pubDate>Tue, 24 Apr 2007 22:48:35 +0000</pubDate>
		<dc:creator>Simon Jensen</dc:creator>
				<category><![CDATA[Alt Andet]]></category>
		<category><![CDATA[meta]]></category>
		<category><![CDATA[seo]]></category>
		<category><![CDATA[web programmering]]></category>

		<guid isPermaLink="false">http://www.simon-jensen.net/SEO-for-begyndere.html</guid>
		<description><![CDATA[på mit nye job har man forstand på søgemaskineoptimering (SEO) &#8211; og jeg suger til mig alt hvad jeg kan. Min ven og boss, Marcel Fuursted, har for nyligt skrevet en post med titlen: &#8220;Søgemaskineoptimering &#8211; det er de små ting&#8220;. Posten giver nogle gode fif til hvordan du kan søgeoptimerer din tekstforfatning. Det er, [...]]]></description>
			<content:encoded><![CDATA[<p>på mit nye job har man forstand på <a title="Læs mere om søgemaskineoptimering her." href="http://www.redeluxe.dk/" target="_blank">søgemaskineoptimering (SEO)</a> &#8211; og jeg suger til mig alt hvad jeg kan.</p>
<p>Min ven og boss, <a title="Gå til SEO ekspert Marcel´s blog." href="http://www.fuursted.org" target="_blank">Marcel Fuursted</a>, har for nyligt skrevet en post med titlen: &#8220;<a title="Læs posten &quot;Søgemaskineoptimering - det er de små ting&quot;." href="http://www.fuursted.org/seo-de-sma-ting.aspx" target="_blank">Søgemaskineoptimering &#8211; det er de små ting</a>&#8220;.</p>
<p>Posten giver nogle gode fif til hvordan du kan søgeoptimerer din tekstforfatning. Det er, som titlen også foreslår, i småtings afdelingen og helt sikkert noget alle kan være med i og forstå, men det er betydelige ting!</p>
<p>I forbindelse med SEO fik jeg forleden endnu endnu et fif &#8211; skulderklap til <a title="Gå til SEO ekspert Martin Østergaards blog." href="http://www.bcool.dk/" target="_blank">Martin Østergaard</a> &#8211; og det har allerede givet resultater.</p>
<p><span id="more-69"></span></p>
<h3>Meta-tags</h3>
<p><strong></strong>Meta-tags som <span style="font-family: 'Courier New';">keywords</span> og <span style="font-family: 'Courier New';">description</span> er her af en grund &#8211; og det skulle nu heller ikke være nogen hemmelighed. Alligevel, lader det til at mange udnytter dem for lidt, eller bare ikke godt nok. Jeg kommer dagligt omkring sider som ikke engang har titler (<span style="font-family: 'Courier New';">&lt;title</span>&gt;) til alle deres sider! Lad det være regl nr. 1 &#8211; Hav unikke og sigende titler til alle dine sider.</p>
<p>Meta-tagget keywords fungerer som den direkte oversættelse fra engelsk til dansk &#8211; som nøgleord for den tekst siden indeholder. Der findes adskillige online tools, som kan beregne din <a title="Online keyword density tool." href="http://tools.seobook.com/general/keyword-density/" target="_blank">keyword-densitet</a>, altså hvilke ord i din skrevne tekst, der fremkommer mest, og hvilken procentvise fremkomst disse har.</p>
<p>Meta-tagget description har lidt samme funktion, her skriver du bare en kort opsummering af indholdet.</p>
<h3>SEO med meta-tags</h3>
<p>Tricket er nu at få de tre tags koplet sammen, og det var her Martin kom med lidt inputs.</p>
<p>Når jeg skriver en post som denne, giver jeg den en titel &#8220;<em>SEO for begyndere</em>&#8220;. Udover den titel som posten får, har jeg en titel (meta) for siden. I mit tilfælde &#8220;<em>SIMON JENSEN &#8211; En <strong>Webprogrammør</strong>´s Online Portfolio</em>&#8220;.</p>
<p>Herudover har jeg nogle faste keywords (meta) som fortæller noget om mig og min sides indhold: &#8220;<em><strong>webprogrammør</strong>, web programmering, programmør, simon jensen, aalborg, om simon, referencer, kontakt</em>&#8220;.</p>
<p>Endelig er der beskrivelsen, description (meta): &#8220;<em><strong>Webprogrammør</strong> Simon Jensen &#8211; En <strong>Webprogrammør</strong>´s Online Portfolio &#8211; læs en <strong>webprogrammør</strong>´s blog</em>&#8220;.</p>
<p>Jeg har personligt prøvet at <a title="Google søgning på &quot;webprogrammør&quot;." href="http://www.google.dk/search?q=webprogramm%C3%B8r" target="_blank">optimerer mig lidt til <strong>webprogrammør</strong></a>, som du måske vil have gættet.</p>
<p>Tricket er nu blot at placerer din posts titel i <em>alle</em> de tre nævnte meta-tags, samt bruge de råd Marcel skriver om &#8211; og du er godt på vej. Meta for denne post bliver nu:</p>
<p><strong>&lt;</strong>title<strong>&gt;SEO for begyndere</strong> &#8211; SIMON JENSEN &#8211; En Webprogrammør´s Online Portfolio<strong>&lt;</strong>/title<strong>&gt;</strong></p>
<p>&lt;meta name=&#8221;keywords&#8221; content=&#8221;<strong>SEO for begyndere</strong>, webprogrammør, web programmør, programmør, simon jensen, aalborg, om simon, referencer, kontakt&#8221; /&gt;</p>
<p>&lt;meta name=&#8221;description&#8221; content=&#8221;<strong>SEO for begyndere</strong> skrevet af webprogrammør Simon Jensen &#8211; En Webprogrammør´s Online Portfolio &#8211; læs hele posten: <strong>SEO for begyndere&#8221;</strong> /&gt;</p>
<p><span style="text-decoration: underline;"><span style="font-weight: bold;">Note</span></span>:</p>
<p>Sammenhæng mellem tekst og overskrift i denne post er faktisk ikke specielt gode (SEO-mæssigt), men derimod tæller den godt op ad på webprogrammør.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.simon-jensen.net/seo-for-begyndere.html/feed</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
	</channel>
</rss>

