<?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>tech.nocr.at &#187; wordpress</title> <atom:link href="http://tech.nocr.at/tag/wordpress/feed/" rel="self" type="application/rss+xml" /><link>http://tech.nocr.at</link> <description>gadget.hacking.gaming.geek.tech</description> <lastBuildDate>Sun, 29 Jan 2012 07:25:13 +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>Hotlink Prevention In Nginx</title><link>http://tech.nocr.at/hacking-security/hotlink-prevention-in-nginx/</link> <comments>http://tech.nocr.at/hacking-security/hotlink-prevention-in-nginx/#comments</comments> <pubDate>Mon, 03 Jan 2011 05:52:59 +0000</pubDate> <dc:creator>Frank</dc:creator> <category><![CDATA[Hacking And Security]]></category> <category><![CDATA[ac]]></category> <category><![CDATA[band]]></category> <category><![CDATA[cat]]></category> <category><![CDATA[display]]></category> <category><![CDATA[ds]]></category> <category><![CDATA[ea]]></category> <category><![CDATA[error]]></category> <category><![CDATA[follow]]></category> <category><![CDATA[google]]></category> <category><![CDATA[holidays]]></category> <category><![CDATA[hotlink]]></category> <category><![CDATA[id]]></category> <category><![CDATA[images]]></category> <category><![CDATA[ir]]></category> <category><![CDATA[led]]></category> <category><![CDATA[leech]]></category> <category><![CDATA[loa]]></category> <category><![CDATA[lock]]></category> <category><![CDATA[mini]]></category> <category><![CDATA[nginx]]></category> <category><![CDATA[os]]></category> <category><![CDATA[pen]]></category> <category><![CDATA[press]]></category> <category><![CDATA[root]]></category> <category><![CDATA[server]]></category> <category><![CDATA[small]]></category> <category><![CDATA[tech.nocr.at]]></category> <category><![CDATA[time]]></category> <category><![CDATA[wordpress]]></category> <category><![CDATA[wrong]]></category> <category><![CDATA[yahoo]]></category> <guid
isPermaLink="false">http://tech.nocr.at/?p=2348</guid> <description><![CDATA[Hotlinking, inline linking, leeching, piggy-backing, direct linking or offsite image grabs. No matter what you call it 99% of the time it&#8217;s wrong. Bandwidth costs money. I spent sometime over the holidays examining my logs and noticed that there were a ton of sites hotlinking back to images we had posted. Worst of all, most [...]]]></description> <content:encoded><![CDATA[<div
style="text-align:center;"><img
src="http://tech.nocr.at/wp-content/uploads/2011/01/shotlink.jpg" alt="hotlink.jpg" border="0" width="412" height="235" /></div><p>Hotlinking, inline linking, leeching, piggy-backing, direct linking or offsite image grabs.  No matter what you call it 99% of the time it&#8217;s wrong. Bandwidth costs money.  I spent sometime over the holidays examining my logs and noticed that there were a ton of sites hotlinking back to images we had posted.  Worst of all, most of them were profiting off the images.</p><p>Here at tech.nocr.at we run nginx as a front-end proxy to WordPress.  Stopping hotlinking in nginx is as simple as adding a small snippet of code in your sites-enabled file. Add the following code inside your server statement.</p><div
class="wp_syntax"><div
class="code"><pre class="bash" style="font-family:monospace;">location ~<span style="color: #000000; font-weight: bold;">*</span> ^.+\.<span style="color: #7a0874; font-weight: bold;">&#40;</span>jpg<span style="color: #000000; font-weight: bold;">|</span>jpeg<span style="color: #000000; font-weight: bold;">|</span>gif<span style="color: #000000; font-weight: bold;">|</span>png<span style="color: #7a0874; font-weight: bold;">&#41;</span>$ <span style="color: #7a0874; font-weight: bold;">&#123;</span>
  root   <span style="color: #000000; font-weight: bold;">/</span>path<span style="color: #000000; font-weight: bold;">/</span>to<span style="color: #000000; font-weight: bold;">/</span>webroot;
  valid_referers none blocked server_names ~<span style="color: #7a0874; font-weight: bold;">&#40;</span>yourdomain.com<span style="color: #000000; font-weight: bold;">|</span>google.<span style="color: #000000; font-weight: bold;">|</span>yahoo.<span style="color: #000000; font-weight: bold;">|</span>bing.<span style="color: #7a0874; font-weight: bold;">&#41;</span>;
  <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #007800;">$invalid_referer</span><span style="color: #7a0874; font-weight: bold;">&#41;</span>  <span style="color: #7a0874; font-weight: bold;">&#123;</span>
  <span style="color: #7a0874; font-weight: bold;">return</span> <span style="color: #000000;">403</span>;
  <span style="color: #7a0874; font-weight: bold;">&#125;</span>
<span style="color: #7a0874; font-weight: bold;">&#125;</span></pre></div></div><p>The above will allow images to be displayed if they come from your domain, google, yahoo and bing.  If you have other sites you might want your images to be linked from just add them in the valid_referers statement. If someone tries to hotlink to one of your images they will receive a 403 error.  If you wish to have a different image displayed instead of the 403 error, letting them know they are hotlinking, then you must replace the return 403; line with this:</p><div
class="wp_syntax"><div
class="code"><pre class="bash" style="font-family:monospace;">rewrite  ^  http:<span style="color: #000000; font-weight: bold;">//</span>yourdomain.com<span style="color: #000000; font-weight: bold;">/</span>hotlink.jpe;</pre></div></div><p>Notice how the image file ends in .jpe?  If it were you end in .jpg it would end up in a loop and never be displayed.  Simply create the image you want to use and change it&#8217;s extension to .jpe before you upload it to your web host.</p><p></p><p
style="text-align:right"> <g:plusone size="tall"></g:plusone>  <script type="text/javascript">(function() {
    var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true;
    po.src = 'https://apis.google.com/js/plusone.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s);
  })();</script> <a
href="http://api.tweetmeme.com/share?url=http://tech.nocr.at/hacking-security/hotlink-prevention-in-nginx/"><img
src="http://api.tweetmeme.com/imagebutton.gif?url=http://tech.nocr.at/hacking-security/hotlink-prevention-in-nginx/" height="61" width="51" /></a></p><p
style="padding:5px;background:#ffffcc;border:1px solid #ffff99;clear:both"><a
href="http://tech.nocr.at"><img
src="http://tech.nocr.at/images/feed_logo.png" alt="tech.nocr.at" width="16" height="16" border="0" style="float:left;padding:0 5px 5px 0"></a><a
href="http://tech.nocr.at/hacking-security/hotlink-prevention-in-nginx/">Hotlink Prevention In Nginx</a> originally appeared on <a
href="http://tech.nocr.at">tech.nocr.at</a> on 2011/01/03. Reproduction of content not allowed without consent.<br
style="clear:both"></p><p><small>© <a
href="http://tech.nocr.at">tech.nocr.at</a> 2011 | <a
href="http://tech.nocr.at/hacking-security/hotlink-prevention-in-nginx/">Permalink</a> | <a
href="http://tech.nocr.at/hacking-security/hotlink-prevention-in-nginx/#comments">Comments</a> |
Read more in <a
href="http://tech.nocr.at/category/hacking-security/" title="View all posts in Hacking And Security" rel="category tag">Hacking And Security</a> | Explore more in: <a
href="http://tech.nocr.at/tag/ac/" rel="tag">ac</a>, <a
href="http://tech.nocr.at/tag/band/" rel="tag">band</a>, <a
href="http://tech.nocr.at/tag/cat/" rel="tag">cat</a>, <a
href="http://tech.nocr.at/tag/display/" rel="tag">display</a>, <a
href="http://tech.nocr.at/tag/ds/" rel="tag">ds</a>, <a
href="http://tech.nocr.at/tag/ea/" rel="tag">ea</a>, <a
href="http://tech.nocr.at/tag/error/" rel="tag">error</a>, <a
href="http://tech.nocr.at/tag/follow/" rel="tag">follow</a>, <a
href="http://tech.nocr.at/tag/google/" rel="tag">google</a>, <a
href="http://tech.nocr.at/tag/holidays/" rel="tag">holidays</a>, <a
href="http://tech.nocr.at/tag/hotlink/" rel="tag">hotlink</a>, <a
href="http://tech.nocr.at/tag/id/" rel="tag">id</a>, <a
href="http://tech.nocr.at/tag/images/" rel="tag">images</a>, <a
href="http://tech.nocr.at/tag/ir/" rel="tag">ir</a>, <a
href="http://tech.nocr.at/tag/led/" rel="tag">led</a>, <a
href="http://tech.nocr.at/tag/leech/" rel="tag">leech</a>, <a
href="http://tech.nocr.at/tag/loa/" rel="tag">loa</a>, <a
href="http://tech.nocr.at/tag/lock/" rel="tag">lock</a>, <a
href="http://tech.nocr.at/tag/mini/" rel="tag">mini</a>, <a
href="http://tech.nocr.at/tag/nginx/" rel="tag">nginx</a>, <a
href="http://tech.nocr.at/tag/os/" rel="tag">os</a>, <a
href="http://tech.nocr.at/tag/pen/" rel="tag">pen</a>, <a
href="http://tech.nocr.at/tag/press/" rel="tag">press</a>, <a
href="http://tech.nocr.at/tag/root/" rel="tag">root</a>, <a
href="http://tech.nocr.at/tag/server/" rel="tag">server</a>, <a
href="http://tech.nocr.at/tag/small/" rel="tag">small</a>, <a
href="http://tech.nocr.at/tag/tech-nocr-at/" rel="tag">tech.nocr.at</a>, <a
href="http://tech.nocr.at/tag/time/" rel="tag">time</a>, <a
href="http://tech.nocr.at/tag/wordpress/" rel="tag">wordpress</a>, <a
href="http://tech.nocr.at/tag/wrong/" rel="tag">wrong</a>, <a
href="http://tech.nocr.at/tag/yahoo/" rel="tag">yahoo</a> | <a
href="http://del.icio.us/post?url=http://tech.nocr.at/hacking-security/hotlink-prevention-in-nginx/&title=Hotlink Prevention In Nginx">Add to del.icio.us</a> | <a
href="http://www.stumbleupon.com/submit?url=http://tech.nocr.at/hacking-security/hotlink-prevention-in-nginx/&title=Hotlink Prevention In Nginx">Stumble it</a> | <a
href="http://reddit.com/submit?url=http://tech.nocr.at/hacking-security/hotlink-prevention-in-nginx/&title=Hotlink Prevention In Nginx">Reddit</a> </small></p>]]></content:encoded> <wfw:commentRss>http://tech.nocr.at/hacking-security/hotlink-prevention-in-nginx/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Top 10 Of 2010</title><link>http://tech.nocr.at/tech/top-10-of-2010/</link> <comments>http://tech.nocr.at/tech/top-10-of-2010/#comments</comments> <pubDate>Wed, 29 Dec 2010 05:51:37 +0000</pubDate> <dc:creator>Frank</dc:creator> <category><![CDATA[Tech News]]></category> <category><![CDATA[2010]]></category> <category><![CDATA[ac]]></category> <category><![CDATA[cable]]></category> <category><![CDATA[cat]]></category> <category><![CDATA[comments]]></category> <category><![CDATA[distro]]></category> <category><![CDATA[diy]]></category> <category><![CDATA[door]]></category> <category><![CDATA[ds]]></category> <category><![CDATA[ea]]></category> <category><![CDATA[game]]></category> <category><![CDATA[Gaming]]></category> <category><![CDATA[id]]></category> <category><![CDATA[ipod]]></category> <category><![CDATA[key]]></category> <category><![CDATA[keys]]></category> <category><![CDATA[knock]]></category> <category><![CDATA[led]]></category> <category><![CDATA[leech]]></category> <category><![CDATA[linux]]></category> <category><![CDATA[loa]]></category> <category><![CDATA[lock]]></category> <category><![CDATA[mobile]]></category> <category><![CDATA[nginx]]></category> <category><![CDATA[open]]></category> <category><![CDATA[os]]></category> <category><![CDATA[pen]]></category> <category><![CDATA[press]]></category> <category><![CDATA[ring]]></category> <category><![CDATA[rip]]></category> <category><![CDATA[secret]]></category> <category><![CDATA[sega]]></category> <category><![CDATA[shuffle]]></category> <category><![CDATA[speed]]></category> <category><![CDATA[tech.nocr.at]]></category> <category><![CDATA[technology]]></category> <category><![CDATA[vga]]></category> <category><![CDATA[wifi]]></category> <category><![CDATA[wordpress]]></category> <category><![CDATA[wp super cache]]></category> <guid
isPermaLink="false">http://tech.nocr.at/tech/top-10-of-2010/</guid> <description><![CDATA[Another year is almost behind us and thanks to our dedicated and loyal readers our 3rd successful year bringing you the latest in gadgets, gaming, technology and the bizarre. We have brought the monkeys in (by monkeys we mean a crafty worded perl script) and have compiled the the most viewed posts here on tech.nocr.at. [...]]]></description> <content:encoded><![CDATA[<p><center><img
src="http://tech.nocr.at/wp-content/uploads/2010/12/technocrat_top10.png" width="470" height="264" alt="technocrat_top10.png" class="captionfull" /></center></p><p>Another year is almost behind us and thanks to our dedicated and loyal readers our 3rd successful year bringing you the latest in gadgets, gaming, technology and the bizarre.</p><p>We have brought the monkeys in (by monkeys we mean a crafty worded perl script) and have compiled the the most viewed posts here on tech.nocr.at. This list doesn&#8217;t just contain posts from 2010, it contains the top ten most viewed posts this year regardless of when they were created.</p><p>Without further ado, tech.nocr.at&#8217;s top 10 posts of 2010:</p><ol><li><a
href="http://tech.nocr.at/hacking-security/baffle-wifi-leeches-with-an-upside-down-ternet-2/">Baffle WiFi Leeches With An Upside-Down-Ternet</a></li><li><a
href="http://tech.nocr.at/gaming/super-genintari-4-game-stations-in-one/">Super Genintari &#8211; 4 Game Stations In One</a></li><li><a
href="http://tech.nocr.at/tech/even-more-linux-distros-that-dont-suck/">Even More Linux Distros That Don&#8217;t Suck</a></li><li><a
href="http://tech.nocr.at/hacking-security/wifi-door-opener/">WiFi Door Opener</a></li><li><a
href="http://tech.nocr.at/tech/how-to-speed-up-wordpress-with-nginx-and-wp-super-cache/">How To Speed Up WordPress With Nginx And WP Super Cache</a></li><li><a
href="http://tech.nocr.at/hacking-security/hunt-down-wi-fi-leeches-with-moocherhunter/">Hunt Down WiFi Leeches With MoocherHunter</a></li><li><a
href="http://tech.nocr.at/gaming/sega-gen-mobile/">Sega Gen Mobile</a></li><li><a
href="http://tech.nocr.at/hacking-security/diy-ipod-shuffle-cable/">DIY: iPod Shuffle Cable</a></li><li><a
href="http://tech.nocr.at/hacking-security/how-to-vga-over-cat-5/">How To: VGA Over Cat-5</a></li><li><a
href="http://tech.nocr.at/hacking-security/secret-knock-door-lock/">Secret Knock Door Lock</a></li></ol><p>Let us know in the comments what were your favorite posts of 2010.</p><p></p><p
style="text-align:right"> <g:plusone size="tall"></g:plusone>  <script type="text/javascript">(function() {
    var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true;
    po.src = 'https://apis.google.com/js/plusone.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s);
  })();</script> <a
href="http://api.tweetmeme.com/share?url=http://tech.nocr.at/tech/top-10-of-2010/"><img
src="http://api.tweetmeme.com/imagebutton.gif?url=http://tech.nocr.at/tech/top-10-of-2010/" height="61" width="51" /></a></p><p
style="padding:5px;background:#ffffcc;border:1px solid #ffff99;clear:both"><a
href="http://tech.nocr.at"><img
src="http://tech.nocr.at/images/feed_logo.png" alt="tech.nocr.at" width="16" height="16" border="0" style="float:left;padding:0 5px 5px 0"></a><a
href="http://tech.nocr.at/tech/top-10-of-2010/">Top 10 Of 2010</a> originally appeared on <a
href="http://tech.nocr.at">tech.nocr.at</a> on 2010/12/29. Reproduction of content not allowed without consent.<br
style="clear:both"></p><p><small>© <a
href="http://tech.nocr.at">tech.nocr.at</a> 2010 | <a
href="http://tech.nocr.at/tech/top-10-of-2010/">Permalink</a> | <a
href="http://tech.nocr.at/tech/top-10-of-2010/#comments">Comments</a> |
Read more in <a
href="http://tech.nocr.at/category/tech/" title="View all posts in Tech News" rel="category tag">Tech News</a> | Explore more in: <a
href="http://tech.nocr.at/tag/2010/" rel="tag">2010</a>, <a
href="http://tech.nocr.at/tag/ac/" rel="tag">ac</a>, <a
href="http://tech.nocr.at/tag/cable/" rel="tag">cable</a>, <a
href="http://tech.nocr.at/tag/cat/" rel="tag">cat</a>, <a
href="http://tech.nocr.at/tag/comments/" rel="tag">comments</a>, <a
href="http://tech.nocr.at/tag/distro/" rel="tag">distro</a>, <a
href="http://tech.nocr.at/tag/diy/" rel="tag">diy</a>, <a
href="http://tech.nocr.at/tag/door/" rel="tag">door</a>, <a
href="http://tech.nocr.at/tag/ds/" rel="tag">ds</a>, <a
href="http://tech.nocr.at/tag/ea/" rel="tag">ea</a>, <a
href="http://tech.nocr.at/tag/game/" rel="tag">game</a>, <a
href="http://tech.nocr.at/tag/gaming/" rel="tag">Gaming</a>, <a
href="http://tech.nocr.at/tag/id/" rel="tag">id</a>, <a
href="http://tech.nocr.at/tag/ipod/" rel="tag">ipod</a>, <a
href="http://tech.nocr.at/tag/key/" rel="tag">key</a>, <a
href="http://tech.nocr.at/tag/keys/" rel="tag">keys</a>, <a
href="http://tech.nocr.at/tag/knock/" rel="tag">knock</a>, <a
href="http://tech.nocr.at/tag/led/" rel="tag">led</a>, <a
href="http://tech.nocr.at/tag/leech/" rel="tag">leech</a>, <a
href="http://tech.nocr.at/tag/linux/" rel="tag">linux</a>, <a
href="http://tech.nocr.at/tag/loa/" rel="tag">loa</a>, <a
href="http://tech.nocr.at/tag/lock/" rel="tag">lock</a>, <a
href="http://tech.nocr.at/tag/mobile/" rel="tag">mobile</a>, <a
href="http://tech.nocr.at/tag/nginx/" rel="tag">nginx</a>, <a
href="http://tech.nocr.at/tag/open/" rel="tag">open</a>, <a
href="http://tech.nocr.at/tag/os/" rel="tag">os</a>, <a
href="http://tech.nocr.at/tag/pen/" rel="tag">pen</a>, <a
href="http://tech.nocr.at/tag/press/" rel="tag">press</a>, <a
href="http://tech.nocr.at/tag/ring/" rel="tag">ring</a>, <a
href="http://tech.nocr.at/tag/rip/" rel="tag">rip</a>, <a
href="http://tech.nocr.at/tag/secret/" rel="tag">secret</a>, <a
href="http://tech.nocr.at/tag/sega/" rel="tag">sega</a>, <a
href="http://tech.nocr.at/tag/shuffle/" rel="tag">shuffle</a>, <a
href="http://tech.nocr.at/tag/speed/" rel="tag">speed</a>, <a
href="http://tech.nocr.at/tag/tech-nocr-at/" rel="tag">tech.nocr.at</a>, <a
href="http://tech.nocr.at/tag/technology/" rel="tag">technology</a>, <a
href="http://tech.nocr.at/tag/vga/" rel="tag">vga</a>, <a
href="http://tech.nocr.at/tag/wifi/" rel="tag">wifi</a>, <a
href="http://tech.nocr.at/tag/wordpress/" rel="tag">wordpress</a>, <a
href="http://tech.nocr.at/tag/wp-super-cache/" rel="tag">wp super cache</a> | <a
href="http://del.icio.us/post?url=http://tech.nocr.at/tech/top-10-of-2010/&title=Top 10 Of 2010">Add to del.icio.us</a> | <a
href="http://www.stumbleupon.com/submit?url=http://tech.nocr.at/tech/top-10-of-2010/&title=Top 10 Of 2010">Stumble it</a> | <a
href="http://reddit.com/submit?url=http://tech.nocr.at/tech/top-10-of-2010/&title=Top 10 Of 2010">Reddit</a> </small></p>]]></content:encoded> <wfw:commentRss>http://tech.nocr.at/tech/top-10-of-2010/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>How To Speed Up WordPress With Nginx And WP Super Cache</title><link>http://tech.nocr.at/tech/how-to-speed-up-wordpress-with-nginx-and-wp-super-cache/</link> <comments>http://tech.nocr.at/tech/how-to-speed-up-wordpress-with-nginx-and-wp-super-cache/#comments</comments> <pubDate>Tue, 12 Aug 2008 03:43:16 +0000</pubDate> <dc:creator>Frank</dc:creator> <category><![CDATA[Tech News]]></category> <category><![CDATA[4k]]></category> <category><![CDATA[ac]]></category> <category><![CDATA[ball]]></category> <category><![CDATA[blog]]></category> <category><![CDATA[boost]]></category> <category><![CDATA[bus]]></category> <category><![CDATA[cat]]></category> <category><![CDATA[comments]]></category> <category><![CDATA[debian]]></category> <category><![CDATA[digg]]></category> <category><![CDATA[display]]></category> <category><![CDATA[distro]]></category> <category><![CDATA[ea]]></category> <category><![CDATA[eff]]></category> <category><![CDATA[error]]></category> <category><![CDATA[fast]]></category> <category><![CDATA[fix]]></category> <category><![CDATA[follow]]></category> <category><![CDATA[hd]]></category> <category><![CDATA[howto]]></category> <category><![CDATA[hp]]></category> <category><![CDATA[id]]></category> <category><![CDATA[images]]></category> <category><![CDATA[ir]]></category> <category><![CDATA[led]]></category> <category><![CDATA[light]]></category> <category><![CDATA[links]]></category> <category><![CDATA[live]]></category> <category><![CDATA[loa]]></category> <category><![CDATA[mid]]></category> <category><![CDATA[mod]]></category> <category><![CDATA[nano]]></category> <category><![CDATA[nes]]></category> <category><![CDATA[nginx]]></category> <category><![CDATA[open]]></category> <category><![CDATA[os]]></category> <category><![CDATA[pda]]></category> <category><![CDATA[pdf]]></category> <category><![CDATA[pen]]></category> <category><![CDATA[power]]></category> <category><![CDATA[press]]></category> <category><![CDATA[proc]]></category> <category><![CDATA[processes]]></category> <category><![CDATA[rc]]></category> <category><![CDATA[remote]]></category> <category><![CDATA[reverse]]></category> <category><![CDATA[ring]]></category> <category><![CDATA[root]]></category> <category><![CDATA[server]]></category> <category><![CDATA[speed]]></category> <category><![CDATA[stream]]></category> <category><![CDATA[string]]></category> <category><![CDATA[tech.nocr.at]]></category> <category><![CDATA[time]]></category> <category><![CDATA[ubuntu]]></category> <category><![CDATA[ui]]></category> <category><![CDATA[Untitled]]></category> <category><![CDATA[update]]></category> <category><![CDATA[wordpress]]></category> <category><![CDATA[wp super cache]]></category> <category><![CDATA[zip]]></category> <guid
isPermaLink="false">http://tech.nocr.at/hacking-security/how-to-speed-up-wordpress-with-nginx-and-wp-super-cache/</guid> <description><![CDATA[Edit: Fixes suggested in the comments have been applied to this howto We recently moved tech.nocr.at over to a bunch of VPSs in order to achieve some decent load balancing and speed. Even though SliceHost isn&#8217;t a sponsor, I&#8217;d like to give them a quick plug. SliceHost is easily the greatest VPS provider bar none. [...]]]></description> <content:encoded><![CDATA[<p><center><br
/> <img
src="http://tech.nocr.at/wp-content/uploads/2008/08/word-speed.jpg" width="500" height="150" alt="word_speed.png" class="captionfull" /></center></p><p><b><i>Edit: Fixes suggested in the comments have been applied to this howto</b></i></p><p>We recently moved tech.nocr.at over to a bunch of VPSs in order to achieve some decent load balancing and speed. Even though <a
href="http://slicehost.com">SliceHost</a> isn&#8217;t a sponsor, I&#8217;d like to give them a quick plug. SliceHost is easily the greatest VPS provider bar none. You pick the Distro you want, you tweak it, you set it up, all ports are available, you do as you wish. If you setup multiple VPS with them you can even have private IP&#8217;s between them in order to load balance or cluster. Prices start as low as $20/month. If you use them, click <a
href="https://manage.slicehost.com/customers/new?referrer=788817778">this link</a> so that I can get some referral love. Now on to the article..</p><p>WordPress can be a blessing and a pain at the same time. It&#8217;s great for displaying dynamic content yet it&#8217;s displaying that exact dynamic content that can put a massive stress load on your system. WordPress&#8217;s query routines aren&#8217;t exactly the best. Let&#8217;s not even go into how much of a hog Apache can be, but for running dynamic content and prettying up your url&#8217;s, mod_rewrite can&#8217;t be beat. By using WP Super Cache to help reduce the load on your SQL queries and by placing Nginx in front of Apache as a reverse proxy, you&#8217;d be amazed and how quickly your site will load and respond, even enough to withstand a digg of slashdot effect.</p><p>Here&#8217;s what you are going to need.</p><ul><li><a
href="http://wordpress.org">WordPress</a> (of course)</li><li><a
href="http://httpd.apache.org/">Apache2</a></li><li><a
href="http://nginx.net/">Nginx</a></li><li><a
href="http://ocaoimh.ie/wp-super-cache/">Wp-Super-Cache</a></li></ul><p>This how-to system assumes that you have your Webserver running under a debian style distro like Ubuntu, but It can easily be modified for other distros like Fedora or CentOS.</p><p>Assuming that you already have WordPress running under Apache the first thing we are going to do is install the Wp-Super-Cache plugin and active it under your plugin folder of your WordPress installation. Pay close attention to the installation steps in the included readme.txt file, you have to follow each step properly in order to ensure proper caching.</p><p>Wp-Super-Cache creates static html files of your pages lessening the load on your SQL queries. Once you have it running and working let&#8217;s move on to our next step, reconfiguring Apache.</p><p>Apache can be a resource hog, especially when it has to span multiple child processes in order to serve up content. We are going to have to do some tweaking to apache&#8217;s conf file so that it will work behind Nginx.</p><p>Open up your /etc/apache2/ports.conf file</p><div
class="wp_syntax"><div
class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #c20cb9; font-weight: bold;">nano</span> <span style="color: #000000; font-weight: bold;">/</span>etc<span style="color: #000000; font-weight: bold;">/</span>apache2<span style="color: #000000; font-weight: bold;">/</span>ports.conf</pre></div></div><p>We need to change Apache from port 80 to 8080 as Nginx will be server content to the real world via port 80.</p><div
class="wp_syntax"><div
class="code"><pre class="bash" style="font-family:monospace;">Listen <span style="color: #000000;">8080</span></pre></div></div><p>Next we are going to turn KeepAlives off on Apache since Nginx will be dealing with all of the actual browser connections. This will ensure that all of the child processes in Apache die quickly and don&#8217;t hang around chewing up memory</p><p>Find the KeepAlive entry in your /etc/apache2/apache2.conf file and set it to off</p><div
class="wp_syntax"><div
class="code"><pre class="bash" style="font-family:monospace;">KeepAlive Off</pre></div></div><p>Now that we have made the needed changes in apache we need to restart it so that they take effect.</p><div
class="wp_syntax"><div
class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #000000; font-weight: bold;">/</span>etc<span style="color: #000000; font-weight: bold;">/</span>init.d<span style="color: #000000; font-weight: bold;">/</span>apache2 restart</pre></div></div><p>Next we are going to install Nginx which is a powerful and extremely lightweight http server that is perfect for reverse proxying or load balancing to backend servers like Apache.</p><div
class="wp_syntax"><div
class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #c20cb9; font-weight: bold;">apt-get</span> update <span style="color: #000000; font-weight: bold;">|</span> <span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #c20cb9; font-weight: bold;">apt-get</span> <span style="color: #c20cb9; font-weight: bold;">install</span> nginx</pre></div></div><p>Once nginx is installed we are going to need to modify it&#8217;s config file located at /etc/nginx/nginx.conf</p><div
class="wp_syntax"><div
class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #c20cb9; font-weight: bold;">nano</span> <span style="color: #000000; font-weight: bold;">/</span>etc<span style="color: #000000; font-weight: bold;">/</span>nginx<span style="color: #000000; font-weight: bold;">/</span>nginx.conf</pre></div></div><p>Your conf file should look like this.</p><div
class="wp_syntax"><div
class="code"><pre class="bash" style="font-family:monospace;">user www-data;
worker_processes  <span style="color: #000000;">2</span>;
&nbsp;
error_log  <span style="color: #000000; font-weight: bold;">/</span>var<span style="color: #000000; font-weight: bold;">/</span>log<span style="color: #000000; font-weight: bold;">/</span>nginx<span style="color: #000000; font-weight: bold;">/</span>error.log;
pid        <span style="color: #000000; font-weight: bold;">/</span>var<span style="color: #000000; font-weight: bold;">/</span>run<span style="color: #000000; font-weight: bold;">/</span>nginx.pid;
&nbsp;
events <span style="color: #7a0874; font-weight: bold;">&#123;</span>
	worker_connections  <span style="color: #000000;">1024</span>;
<span style="color: #7a0874; font-weight: bold;">&#125;</span>
&nbsp;
http <span style="color: #7a0874; font-weight: bold;">&#123;</span>
	include       <span style="color: #000000; font-weight: bold;">/</span>etc<span style="color: #000000; font-weight: bold;">/</span>nginx<span style="color: #000000; font-weight: bold;">/</span>mime.types;
	default_type  application<span style="color: #000000; font-weight: bold;">/</span>octet-stream;
	access_log  <span style="color: #000000; font-weight: bold;">/</span>var<span style="color: #000000; font-weight: bold;">/</span>log<span style="color: #000000; font-weight: bold;">/</span>nginx<span style="color: #000000; font-weight: bold;">/</span>access.log;
	sendfile        on;
	tcp_nopush     on;
	keepalive_timeout  <span style="color: #000000;">3</span>;
	tcp_nodelay        on;
	<span style="color: #c20cb9; font-weight: bold;">gzip</span>  on;
	include <span style="color: #000000; font-weight: bold;">/</span>etc<span style="color: #000000; font-weight: bold;">/</span>nginx<span style="color: #000000; font-weight: bold;">/</span>sites-enabled<span style="color: #000000; font-weight: bold;">/*</span>;
<span style="color: #7a0874; font-weight: bold;">&#125;</span></pre></div></div><p>Now we need to move on to the actual site config file for our Nginx setup</p><div
class="wp_syntax"><div
class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #c20cb9; font-weight: bold;">nano</span> <span style="color: #000000; font-weight: bold;">/</span>etc<span style="color: #000000; font-weight: bold;">/</span>nginx<span style="color: #000000; font-weight: bold;">/</span>sites-available<span style="color: #000000; font-weight: bold;">/</span>default</pre></div></div><p>Your file should look something like this (replace domain.com of course)</p><div
class="wp_syntax"><div
class="code"><pre class="bash" style="font-family:monospace;">server <span style="color: #7a0874; font-weight: bold;">&#123;</span>
        listen   <span style="color: #000000;">80</span>;
        server_name  domain.com www.domain.com;
        error_log   <span style="color: #000000; font-weight: bold;">/</span>var<span style="color: #000000; font-weight: bold;">/</span>log<span style="color: #000000; font-weight: bold;">/</span>nginx<span style="color: #000000; font-weight: bold;">/</span>domain.com.error.log;
        access_log  <span style="color: #000000; font-weight: bold;">/</span>var<span style="color: #000000; font-weight: bold;">/</span>log<span style="color: #000000; font-weight: bold;">/</span>nginx<span style="color: #000000; font-weight: bold;">/</span>domain.com.access.log;
&nbsp;
<span style="color: #666666; font-style: italic;"># Main location (path to you blog, relative to your domain root)</span>
        location <span style="color: #000000; font-weight: bold;">/</span> <span style="color: #7a0874; font-weight: bold;">&#123;</span>
            proxy_pass         http:<span style="color: #000000; font-weight: bold;">//</span>127.0.0.1:<span style="color: #000000;">8080</span><span style="color: #000000; font-weight: bold;">/</span>;
            proxy_redirect     off;
&nbsp;
            proxy_set_header   Host             <span style="color: #007800;">$http_host</span>;
            proxy_set_header   X-Real-IP        <span style="color: #007800;">$remote_addr</span>;
            proxy_set_header   X-Forwarded-For  <span style="color: #007800;">$proxy_add_x_forwarded_for</span>;
&nbsp;
            client_max_body_size       10m;
            client_body_buffer_size    128k;
&nbsp;
            proxy_connect_timeout      <span style="color: #000000;">90</span>;
            proxy_send_timeout         <span style="color: #000000;">90</span>;
            proxy_read_timeout         <span style="color: #000000;">90</span>;
&nbsp;
            proxy_buffer_size          4k;
            proxy_buffers              <span style="color: #000000;">4</span> 32k;
            proxy_busy_buffers_size    64k;
            proxy_temp_file_write_size 64k;
        <span style="color: #7a0874; font-weight: bold;">&#125;</span>
&nbsp;
    <span style="color: #666666; font-style: italic;"># Static files location</span>
        location ~<span style="color: #000000; font-weight: bold;">*</span> ^.+\.<span style="color: #7a0874; font-weight: bold;">&#40;</span>htm<span style="color: #000000; font-weight: bold;">|</span>html<span style="color: #000000; font-weight: bold;">|</span>jpg<span style="color: #000000; font-weight: bold;">|</span>jpeg<span style="color: #000000; font-weight: bold;">|</span>gif<span style="color: #000000; font-weight: bold;">|</span>png<span style="color: #000000; font-weight: bold;">|</span>ico<span style="color: #000000; font-weight: bold;">|</span>css<span style="color: #000000; font-weight: bold;">|</span><span style="color: #c20cb9; font-weight: bold;">zip</span><span style="color: #000000; font-weight: bold;">|</span>tgz<span style="color: #000000; font-weight: bold;">|</span>gz<span style="color: #000000; font-weight: bold;">|</span>rar<span style="color: #000000; font-weight: bold;">|</span>bz2<span style="color: #000000; font-weight: bold;">|</span>doc<span style="color: #000000; font-weight: bold;">|</span>xls<span style="color: #000000; font-weight: bold;">|</span>exe<span style="color: #000000; font-weight: bold;">|</span>pdf<span style="color: #000000; font-weight: bold;">|</span>ppt<span style="color: #000000; font-weight: bold;">|</span>txt<span style="color: #000000; font-weight: bold;">|</span><span style="color: #c20cb9; font-weight: bold;">tar</span><span style="color: #000000; font-weight: bold;">|</span>mid<span style="color: #000000; font-weight: bold;">|</span>midi<span style="color: #000000; font-weight: bold;">|</span>wav<span style="color: #000000; font-weight: bold;">|</span>bmp<span style="color: #000000; font-weight: bold;">|</span>rtf<span style="color: #000000; font-weight: bold;">|</span>js<span style="color: #7a0874; font-weight: bold;">&#41;</span>$ <span style="color: #7a0874; font-weight: bold;">&#123;</span>
            root   <span style="color: #000000; font-weight: bold;">/</span>;
        <span style="color: #7a0874; font-weight: bold;">&#125;</span>
	<span style="color: #666666; font-style: italic;"># if the requested file exists, return it immediately</span>
	<span style="color: #000000; font-weight: bold;">if</span> <span style="color: #7a0874; font-weight: bold;">&#40;</span>-f <span style="color: #007800;">$request_filename</span><span style="color: #7a0874; font-weight: bold;">&#41;</span> <span style="color: #7a0874; font-weight: bold;">&#123;</span>
	<span style="color: #7a0874; font-weight: bold;">break</span>;
	<span style="color: #7a0874; font-weight: bold;">&#125;</span>
&nbsp;
	<span style="color: #000000; font-weight: bold;">set</span> <span style="color: #007800;">$supercache_file</span> <span style="color: #ff0000;">''</span>;
	<span style="color: #000000; font-weight: bold;">set</span> <span style="color: #007800;">$supercache_uri</span> <span style="color: #007800;">$request_uri</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">if</span> <span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #007800;">$request_method</span> = POST<span style="color: #7a0874; font-weight: bold;">&#41;</span> <span style="color: #7a0874; font-weight: bold;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">set</span> <span style="color: #007800;">$supercache_uri</span> <span style="color: #ff0000;">''</span>;
	<span style="color: #7a0874; font-weight: bold;">&#125;</span>
&nbsp;
	<span style="color: #666666; font-style: italic;"># Using pretty permalinks, so bypass the cache for any query string</span>
	<span style="color: #000000; font-weight: bold;">if</span> <span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #007800;">$query_string</span><span style="color: #7a0874; font-weight: bold;">&#41;</span> <span style="color: #7a0874; font-weight: bold;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">set</span> <span style="color: #007800;">$supercache_uri</span> <span style="color: #ff0000;">''</span>;
	<span style="color: #7a0874; font-weight: bold;">&#125;</span>
&nbsp;
	<span style="color: #000000; font-weight: bold;">if</span> <span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #007800;">$http_cookie</span> ~<span style="color: #000000; font-weight: bold;">*</span> <span style="color: #ff0000;">&quot;comment_author_|wordpress|wp-postpass_&quot;</span> <span style="color: #7a0874; font-weight: bold;">&#41;</span> <span style="color: #7a0874; font-weight: bold;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">set</span> <span style="color: #007800;">$supercache_uri</span> <span style="color: #ff0000;">''</span>;
	<span style="color: #7a0874; font-weight: bold;">&#125;</span>
&nbsp;
	<span style="color: #666666; font-style: italic;"># if we haven't bypassed the cache, specify our supercache file</span>
	<span style="color: #000000; font-weight: bold;">if</span> <span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #007800;">$supercache_uri</span> ~ ^<span style="color: #7a0874; font-weight: bold;">&#40;</span>.+<span style="color: #7a0874; font-weight: bold;">&#41;</span>$<span style="color: #7a0874; font-weight: bold;">&#41;</span> <span style="color: #7a0874; font-weight: bold;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">set</span> <span style="color: #007800;">$supercache_file</span> <span style="color: #000000; font-weight: bold;">/</span>wp-content<span style="color: #000000; font-weight: bold;">/</span>cache<span style="color: #000000; font-weight: bold;">/</span>supercache<span style="color: #000000; font-weight: bold;">/</span><span style="color: #007800;">$http_host</span><span style="color: #000000; font-weight: bold;">/</span><span style="color: #007800;">$1</span>index.html;
	<span style="color: #7a0874; font-weight: bold;">&#125;</span>
&nbsp;
	<span style="color: #666666; font-style: italic;"># only rewrite to the supercache file if it actually exists</span>
	<span style="color: #000000; font-weight: bold;">if</span> <span style="color: #7a0874; font-weight: bold;">&#40;</span>-f <span style="color: #007800;">$document_root</span><span style="color: #007800;">$supercache_file</span><span style="color: #7a0874; font-weight: bold;">&#41;</span> <span style="color: #7a0874; font-weight: bold;">&#123;</span>
	rewrite ^<span style="color: #7a0874; font-weight: bold;">&#40;</span>.<span style="color: #000000; font-weight: bold;">*</span><span style="color: #7a0874; font-weight: bold;">&#41;</span>$ <span style="color: #007800;">$supercache_file</span> <span style="color: #7a0874; font-weight: bold;">break</span>;
	<span style="color: #7a0874; font-weight: bold;">&#125;</span>
<span style="color: #7a0874; font-weight: bold;">&#125;</span></pre></div></div><p>The above (especially the if statements) help Ngnix pass the static html files that are created by WP Super Cache directly to the users thus freeing up Apache to do nothing more than handle the dynamic requests.</p><p>Now it&#8217;s time to restart Ngnix and get the whole ball of wax working</p><div
class="wp_syntax"><div
class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">/</span>etc<span style="color: #000000; font-weight: bold;">/</span>init.d<span style="color: #000000; font-weight: bold;">/</span>nginx restart</pre></div></div><p>What we have essentially done is taken the load of serving static files like images, css, and js files off of apache and passed it on to Ngnix which runs a lot faster and leaner than apache for serving static content. All requests for any dynamic content like php still gets passed on to apache. Clean and simple.</p><p>In closing let me mention that this is just what works for me, i&#8217;m sure that there might be a better way to use WP Super Cache and Ngnix to speed up WordPress, but what you see above has really helped with the load on both of the tech.nocr.at front-end web servers.</p><p></p><p
style="text-align:right"> <g:plusone size="tall"></g:plusone>  <script type="text/javascript">(function() {
    var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true;
    po.src = 'https://apis.google.com/js/plusone.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s);
  })();</script> <a
href="http://api.tweetmeme.com/share?url=http://tech.nocr.at/tech/how-to-speed-up-wordpress-with-nginx-and-wp-super-cache/"><img
src="http://api.tweetmeme.com/imagebutton.gif?url=http://tech.nocr.at/tech/how-to-speed-up-wordpress-with-nginx-and-wp-super-cache/" height="61" width="51" /></a></p><p
style="padding:5px;background:#ffffcc;border:1px solid #ffff99;clear:both"><a
href="http://tech.nocr.at"><img
src="http://tech.nocr.at/images/feed_logo.png" alt="tech.nocr.at" width="16" height="16" border="0" style="float:left;padding:0 5px 5px 0"></a><a
href="http://tech.nocr.at/tech/how-to-speed-up-wordpress-with-nginx-and-wp-super-cache/">How To Speed Up WordPress With Nginx And WP Super Cache</a> originally appeared on <a
href="http://tech.nocr.at">tech.nocr.at</a> on 2008/08/11. Reproduction of content not allowed without consent.<br
style="clear:both"></p><p><small>© <a
href="http://tech.nocr.at">tech.nocr.at</a> 2008 | <a
href="http://tech.nocr.at/tech/how-to-speed-up-wordpress-with-nginx-and-wp-super-cache/">Permalink</a> | <a
href="http://tech.nocr.at/tech/how-to-speed-up-wordpress-with-nginx-and-wp-super-cache/#comments">33 Comments</a> |
Read more in <a
href="http://tech.nocr.at/category/tech/" title="View all posts in Tech News" rel="category tag">Tech News</a> | Explore more in: <a
href="http://tech.nocr.at/tag/4k/" rel="tag">4k</a>, <a
href="http://tech.nocr.at/tag/ac/" rel="tag">ac</a>, <a
href="http://tech.nocr.at/tag/ball/" rel="tag">ball</a>, <a
href="http://tech.nocr.at/tag/blog/" rel="tag">blog</a>, <a
href="http://tech.nocr.at/tag/boost/" rel="tag">boost</a>, <a
href="http://tech.nocr.at/tag/bus/" rel="tag">bus</a>, <a
href="http://tech.nocr.at/tag/cat/" rel="tag">cat</a>, <a
href="http://tech.nocr.at/tag/comments/" rel="tag">comments</a>, <a
href="http://tech.nocr.at/tag/debian/" rel="tag">debian</a>, <a
href="http://tech.nocr.at/tag/digg/" rel="tag">digg</a>, <a
href="http://tech.nocr.at/tag/display/" rel="tag">display</a>, <a
href="http://tech.nocr.at/tag/distro/" rel="tag">distro</a>, <a
href="http://tech.nocr.at/tag/ea/" rel="tag">ea</a>, <a
href="http://tech.nocr.at/tag/eff/" rel="tag">eff</a>, <a
href="http://tech.nocr.at/tag/error/" rel="tag">error</a>, <a
href="http://tech.nocr.at/tag/fast/" rel="tag">fast</a>, <a
href="http://tech.nocr.at/tag/fix/" rel="tag">fix</a>, <a
href="http://tech.nocr.at/tag/follow/" rel="tag">follow</a>, <a
href="http://tech.nocr.at/tag/hd/" rel="tag">hd</a>, <a
href="http://tech.nocr.at/tag/howto/" rel="tag">howto</a>, <a
href="http://tech.nocr.at/tag/hp/" rel="tag">hp</a>, <a
href="http://tech.nocr.at/tag/id/" rel="tag">id</a>, <a
href="http://tech.nocr.at/tag/images/" rel="tag">images</a>, <a
href="http://tech.nocr.at/tag/ir/" rel="tag">ir</a>, <a
href="http://tech.nocr.at/tag/led/" rel="tag">led</a>, <a
href="http://tech.nocr.at/tag/light/" rel="tag">light</a>, <a
href="http://tech.nocr.at/tag/links/" rel="tag">links</a>, <a
href="http://tech.nocr.at/tag/live/" rel="tag">live</a>, <a
href="http://tech.nocr.at/tag/loa/" rel="tag">loa</a>, <a
href="http://tech.nocr.at/tag/mid/" rel="tag">mid</a>, <a
href="http://tech.nocr.at/tag/mod/" rel="tag">mod</a>, <a
href="http://tech.nocr.at/tag/nano/" rel="tag">nano</a>, <a
href="http://tech.nocr.at/tag/nes/" rel="tag">nes</a>, <a
href="http://tech.nocr.at/tag/nginx/" rel="tag">nginx</a>, <a
href="http://tech.nocr.at/tag/open/" rel="tag">open</a>, <a
href="http://tech.nocr.at/tag/os/" rel="tag">os</a>, <a
href="http://tech.nocr.at/tag/pda/" rel="tag">pda</a>, <a
href="http://tech.nocr.at/tag/pdf/" rel="tag">pdf</a>, <a
href="http://tech.nocr.at/tag/pen/" rel="tag">pen</a>, <a
href="http://tech.nocr.at/tag/power/" rel="tag">power</a>, <a
href="http://tech.nocr.at/tag/press/" rel="tag">press</a>, <a
href="http://tech.nocr.at/tag/proc/" rel="tag">proc</a>, <a
href="http://tech.nocr.at/tag/processes/" rel="tag">processes</a>, <a
href="http://tech.nocr.at/tag/rc/" rel="tag">rc</a>, <a
href="http://tech.nocr.at/tag/remote/" rel="tag">remote</a>, <a
href="http://tech.nocr.at/tag/reverse/" rel="tag">reverse</a>, <a
href="http://tech.nocr.at/tag/ring/" rel="tag">ring</a>, <a
href="http://tech.nocr.at/tag/root/" rel="tag">root</a>, <a
href="http://tech.nocr.at/tag/server/" rel="tag">server</a>, <a
href="http://tech.nocr.at/tag/speed/" rel="tag">speed</a>, <a
href="http://tech.nocr.at/tag/stream/" rel="tag">stream</a>, <a
href="http://tech.nocr.at/tag/string/" rel="tag">string</a>, <a
href="http://tech.nocr.at/tag/tech-nocr-at/" rel="tag">tech.nocr.at</a>, <a
href="http://tech.nocr.at/tag/time/" rel="tag">time</a>, <a
href="http://tech.nocr.at/tag/ubuntu/" rel="tag">ubuntu</a>, <a
href="http://tech.nocr.at/tag/ui/" rel="tag">ui</a>, <a
href="http://tech.nocr.at/tag/untitled/" rel="tag">Untitled</a>, <a
href="http://tech.nocr.at/tag/update/" rel="tag">update</a>, <a
href="http://tech.nocr.at/tag/wordpress/" rel="tag">wordpress</a>, <a
href="http://tech.nocr.at/tag/wp-super-cache/" rel="tag">wp super cache</a>, <a
href="http://tech.nocr.at/tag/zip/" rel="tag">zip</a> | <a
href="http://del.icio.us/post?url=http://tech.nocr.at/tech/how-to-speed-up-wordpress-with-nginx-and-wp-super-cache/&title=How To Speed Up WordPress With Nginx And WP Super Cache">Add to del.icio.us</a> | <a
href="http://www.stumbleupon.com/submit?url=http://tech.nocr.at/tech/how-to-speed-up-wordpress-with-nginx-and-wp-super-cache/&title=How To Speed Up WordPress With Nginx And WP Super Cache">Stumble it</a> | <a
href="http://reddit.com/submit?url=http://tech.nocr.at/tech/how-to-speed-up-wordpress-with-nginx-and-wp-super-cache/&title=How To Speed Up WordPress With Nginx And WP Super Cache">Reddit</a> </small></p>]]></content:encoded> <wfw:commentRss>http://tech.nocr.at/tech/how-to-speed-up-wordpress-with-nginx-and-wp-super-cache/feed/</wfw:commentRss> <slash:comments>33</slash:comments> </item> <item><title>11 WordPress Plugins For Professional Bloggers</title><link>http://tech.nocr.at/tech/15-wordpress-plugins-for-professional-bloggers/</link> <comments>http://tech.nocr.at/tech/15-wordpress-plugins-for-professional-bloggers/#comments</comments> <pubDate>Sun, 03 Aug 2008 04:35:13 +0000</pubDate> <dc:creator>Frank</dc:creator> <category><![CDATA[Tech News]]></category> <category><![CDATA[ac]]></category> <category><![CDATA[amp]]></category> <category><![CDATA[avi]]></category> <category><![CDATA[blog]]></category> <category><![CDATA[bra]]></category> <category><![CDATA[case]]></category> <category><![CDATA[comb]]></category> <category><![CDATA[comments]]></category> <category><![CDATA[digg]]></category> <category><![CDATA[ds]]></category> <category><![CDATA[ea]]></category> <category><![CDATA[follow]]></category> <category><![CDATA[generator]]></category> <category><![CDATA[google]]></category> <category><![CDATA[hp]]></category> <category><![CDATA[ical]]></category> <category><![CDATA[id]]></category> <category><![CDATA[ir]]></category> <category><![CDATA[job]]></category> <category><![CDATA[jobs]]></category> <category><![CDATA[led]]></category> <category><![CDATA[make]]></category> <category><![CDATA[mit]]></category> <category><![CDATA[mod]]></category> <category><![CDATA[nda]]></category> <category><![CDATA[nes]]></category> <category><![CDATA[number]]></category> <category><![CDATA[online]]></category> <category><![CDATA[os]]></category> <category><![CDATA[pen]]></category> <category><![CDATA[plugins]]></category> <category><![CDATA[press]]></category> <category><![CDATA[proc]]></category> <category><![CDATA[rc]]></category> <category><![CDATA[ring]]></category> <category><![CDATA[rss]]></category> <category><![CDATA[security]]></category> <category><![CDATA[seo]]></category> <category><![CDATA[stumbleupon]]></category> <category><![CDATA[switch]]></category> <category><![CDATA[switched]]></category> <category><![CDATA[tech.nocr.at]]></category> <category><![CDATA[time]]></category> <category><![CDATA[tor]]></category> <category><![CDATA[tweaks]]></category> <category><![CDATA[ui]]></category> <category><![CDATA[wordpress]]></category> <guid
isPermaLink="false">http://tech.nocr.at/tech/15-wordpress-plugins-for-professional-bloggers/</guid> <description><![CDATA[In a world filled with enough plugins to make your head spin, it can be quite frustrating looking for that right plugin to do that job your after. Most bloggers have spent countless hours sifting through google or wordpress.org looking for a plugin to do something they are after but just can&#8217;t come up with [...]]]></description> <content:encoded><![CDATA[<p><center><img
src="http://tech.nocr.at/wp-content/uploads/2008/08/plugins.jpg" width="480" height="176" alt="plugins.png" class="captionfull" /></center></p><p>In a world filled with enough plugins to make your head spin, it can be quite frustrating looking for that right plugin to do that job your after. Most bloggers have spent countless hours sifting through google or wordpress.org looking for a plugin to do something they are after but just can&#8217;t come up with the name that they need.</p><p>Everyone can probably name their favorite plugin. The trick is to name the plugins that are worth installing, ones that can actually add something useful to your blog. Remember, plugins tend to slow down wordpress blogs, so it&#8217;s a good to keep an eye on performance and only activate what you actually need.</p><p>Once we switched tech.nocr.at over to wordpress some time ago we too spent countless days tweaking and installing plugins, looking for the right combination to do the job. So here I present to you, the list of must have plugins for any pro-blogger. All of them are installed and activated right here.</p><p><strong>The List</strong></p><p>Of course, these plugins don&#8217;t make your blog an instant success, but they do add some important and needed feature to a blog. Concentrate on content if you want to attract readers and let the plugins do their jobs and help you along the way.</p><p><strong>Must Haves</strong></p><p>The following plugins should be install on any blog no matter what type of content you have or how popular your blog is. No exceptions.</p><ol><li><strong><a
href="http://akismet.com/">Akismet</a><br
/> <span
style="font-weight: normal;">This one is a no brainer, I mean, who the hell wants spam on their site?</span></strong></li><li><strong><a
href="http://ocaoimh.ie/wp-super-cache/">WP-Super-Cache</a><br
/> <span
style="font-weight: normal;">Once one of your posts hits the front page of Digg or you become popular on StumbleUpon you are going to be thankful of this puppy. This plugin stores a static file of each page in html, which is easier to show than dynamic content. It lowers the processing of PHP and the database hits that can kill you.</span></strong></li><li><strong><a
href="http://wordpress.org/extend/plugins/all-in-one-seo-pack/">All in One SEO Pack</a><br
/> <span
style="font-weight: normal;">Want to have your site indexed properly on search engines? Let this puppy take all of the hard work off of your hands.</span></strong></li></ol><p><strong>SEO &amp; analytics</strong></p><ol><li><strong><a
href="http://wordpress.org/extend/plugins/google-analytics-for-wordpress/">Google Analytics for WordPress</a><br
/> <span
style="font-weight: normal;">Probably the worlds most used analytics package. Install this one and you will be greeted with more stats than you can handle.</span></strong></li><li><strong><a
href="http://wordpress.org/extend/plugins/wp-useronline/">WP-UserOnline</a><br
/> <span
style="font-weight: normal;">Does exactly what it says, tells your how many people are on your site right now. Even gives you referring URL&#8217;s and spiders too.</span></strong></li><li><strong><a
href="http://wordpress.org/extend/plugins/google-sitemap-generator/">Google XML-Sitemap Generator</a><br
/> <span
style="font-weight: normal;">Search engines just love sitemaps, especially google. This plugin will create a XML-Sitemap for you automatically and keep it up-to-date.</span></strong></li></ol><p><strong>RSS Plugin</strong></p><ol><li><strong><a
href="http://flagrantdisregard.com/feedburner/">Feedburner Feedsmith</a><br
/> <span
style="font-weight: normal;">Feedburner is probably the industry standard for rolling out your feeds. This plugin will ensure that any link on your site to your RSS feed is redirected to your feedburner account.</span></strong></li></ol><p><strong>Comment Plugins<br
/></strong></p><ol><li><strong><a
href="http://www.ozpolitics.info/blog/wordpress-plugins/#move">Move Comments</a><br
/> <span
style="font-weight: normal;">This plugin in will give you the ability to move comments from one post to another. Keeps your commenters on track.</span></strong></li><li><strong><a
href="http://wordpress.org/extend/plugins/simple-captcha/">CAPTCHA</a><br
/> <span
style="font-weight: normal;">Just incase Akisment didn&#8217;t get em, this one will help you out.</span></strong></li></ol><p><strong>Miscellaneous Plugins</strong></p><ol><li><strong><a
href="http://wordpress.org/extend/plugins/wordpress-23-related-posts-plugin/">Related Posts</a><br
/> <span
style="font-weight: normal;">Shows a number (set by you) of posts that relate to this post a users is one. This is a great plugin for giving people a choice of similar content on your site and having them dig deeper.</span></strong></li><li><strong><a
href="http://wordpress.org/extend/plugins/maintenance-mode/">Maintenance Mode</a><br
/> <span
style="font-weight: normal;">If you ever need to tweak or upgrade your system, this plugin will allow your to show a static HTML page telling people that you are down for some upgrade and tweak love. The best part is if log in, you can still access your site to test those tweaks and upgrades.</span></strong></li></ol><p><span
style="font-weight: normal;">Well there it is, this list of wordpress plugins that are must haves. There is always room for improvement though. If you have a must have plugin in that we should know about then let us know.</span></p><p></p><p
style="text-align:right"> <g:plusone size="tall"></g:plusone>  <script type="text/javascript">(function() {
    var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true;
    po.src = 'https://apis.google.com/js/plusone.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s);
  })();</script> <a
href="http://api.tweetmeme.com/share?url=http://tech.nocr.at/tech/15-wordpress-plugins-for-professional-bloggers/"><img
src="http://api.tweetmeme.com/imagebutton.gif?url=http://tech.nocr.at/tech/15-wordpress-plugins-for-professional-bloggers/" height="61" width="51" /></a></p><p
style="padding:5px;background:#ffffcc;border:1px solid #ffff99;clear:both"><a
href="http://tech.nocr.at"><img
src="http://tech.nocr.at/images/feed_logo.png" alt="tech.nocr.at" width="16" height="16" border="0" style="float:left;padding:0 5px 5px 0"></a><a
href="http://tech.nocr.at/tech/15-wordpress-plugins-for-professional-bloggers/">11 WordPress Plugins For Professional Bloggers</a> originally appeared on <a
href="http://tech.nocr.at">tech.nocr.at</a> on 2008/08/02. Reproduction of content not allowed without consent.<br
style="clear:both"></p><p><small>© <a
href="http://tech.nocr.at">tech.nocr.at</a> 2008 | <a
href="http://tech.nocr.at/tech/15-wordpress-plugins-for-professional-bloggers/">Permalink</a> | <a
href="http://tech.nocr.at/tech/15-wordpress-plugins-for-professional-bloggers/#comments">2 Comments</a> |
Read more in <a
href="http://tech.nocr.at/category/tech/" title="View all posts in Tech News" rel="category tag">Tech News</a> | Explore more in: <a
href="http://tech.nocr.at/tag/ac/" rel="tag">ac</a>, <a
href="http://tech.nocr.at/tag/amp/" rel="tag">amp</a>, <a
href="http://tech.nocr.at/tag/avi/" rel="tag">avi</a>, <a
href="http://tech.nocr.at/tag/blog/" rel="tag">blog</a>, <a
href="http://tech.nocr.at/tag/bra/" rel="tag">bra</a>, <a
href="http://tech.nocr.at/tag/case/" rel="tag">case</a>, <a
href="http://tech.nocr.at/tag/comb/" rel="tag">comb</a>, <a
href="http://tech.nocr.at/tag/comments/" rel="tag">comments</a>, <a
href="http://tech.nocr.at/tag/digg/" rel="tag">digg</a>, <a
href="http://tech.nocr.at/tag/ds/" rel="tag">ds</a>, <a
href="http://tech.nocr.at/tag/ea/" rel="tag">ea</a>, <a
href="http://tech.nocr.at/tag/follow/" rel="tag">follow</a>, <a
href="http://tech.nocr.at/tag/generator/" rel="tag">generator</a>, <a
href="http://tech.nocr.at/tag/google/" rel="tag">google</a>, <a
href="http://tech.nocr.at/tag/hp/" rel="tag">hp</a>, <a
href="http://tech.nocr.at/tag/ical/" rel="tag">ical</a>, <a
href="http://tech.nocr.at/tag/id/" rel="tag">id</a>, <a
href="http://tech.nocr.at/tag/ir/" rel="tag">ir</a>, <a
href="http://tech.nocr.at/tag/job/" rel="tag">job</a>, <a
href="http://tech.nocr.at/tag/jobs/" rel="tag">jobs</a>, <a
href="http://tech.nocr.at/tag/led/" rel="tag">led</a>, <a
href="http://tech.nocr.at/tag/make/" rel="tag">make</a>, <a
href="http://tech.nocr.at/tag/mit/" rel="tag">mit</a>, <a
href="http://tech.nocr.at/tag/mod/" rel="tag">mod</a>, <a
href="http://tech.nocr.at/tag/nda/" rel="tag">nda</a>, <a
href="http://tech.nocr.at/tag/nes/" rel="tag">nes</a>, <a
href="http://tech.nocr.at/tag/number/" rel="tag">number</a>, <a
href="http://tech.nocr.at/tag/online/" rel="tag">online</a>, <a
href="http://tech.nocr.at/tag/os/" rel="tag">os</a>, <a
href="http://tech.nocr.at/tag/pen/" rel="tag">pen</a>, <a
href="http://tech.nocr.at/tag/plugins/" rel="tag">plugins</a>, <a
href="http://tech.nocr.at/tag/press/" rel="tag">press</a>, <a
href="http://tech.nocr.at/tag/proc/" rel="tag">proc</a>, <a
href="http://tech.nocr.at/tag/rc/" rel="tag">rc</a>, <a
href="http://tech.nocr.at/tag/ring/" rel="tag">ring</a>, <a
href="http://tech.nocr.at/tag/rss/" rel="tag">rss</a>, <a
href="http://tech.nocr.at/tag/security/" rel="tag">security</a>, <a
href="http://tech.nocr.at/tag/seo/" rel="tag">seo</a>, <a
href="http://tech.nocr.at/tag/stumbleupon/" rel="tag">stumbleupon</a>, <a
href="http://tech.nocr.at/tag/switch/" rel="tag">switch</a>, <a
href="http://tech.nocr.at/tag/switched/" rel="tag">switched</a>, <a
href="http://tech.nocr.at/tag/tech-nocr-at/" rel="tag">tech.nocr.at</a>, <a
href="http://tech.nocr.at/tag/time/" rel="tag">time</a>, <a
href="http://tech.nocr.at/tag/tor/" rel="tag">tor</a>, <a
href="http://tech.nocr.at/tag/tweaks/" rel="tag">tweaks</a>, <a
href="http://tech.nocr.at/tag/ui/" rel="tag">ui</a>, <a
href="http://tech.nocr.at/tag/wordpress/" rel="tag">wordpress</a> | <a
href="http://del.icio.us/post?url=http://tech.nocr.at/tech/15-wordpress-plugins-for-professional-bloggers/&title=11 WordPress Plugins For Professional Bloggers">Add to del.icio.us</a> | <a
href="http://www.stumbleupon.com/submit?url=http://tech.nocr.at/tech/15-wordpress-plugins-for-professional-bloggers/&title=11 WordPress Plugins For Professional Bloggers">Stumble it</a> | <a
href="http://reddit.com/submit?url=http://tech.nocr.at/tech/15-wordpress-plugins-for-professional-bloggers/&title=11 WordPress Plugins For Professional Bloggers">Reddit</a> </small></p>]]></content:encoded> <wfw:commentRss>http://tech.nocr.at/tech/15-wordpress-plugins-for-professional-bloggers/feed/</wfw:commentRss> <slash:comments>2</slash:comments> </item> </channel> </rss>
