<?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>Herself&#039;s Webtools &#187; things you should know</title>
	<atom:link href="http://herselfswebtools.com/category/general-information/feed" rel="self" type="application/rss+xml" />
	<link>http://herselfswebtools.com</link>
	<description>Scripts, HowTos, Templates, Plugins, Widgets, Tips</description>
	<lastBuildDate>Fri, 18 Nov 2011 15:47:19 +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>Some bot blocking htaccess hacks for WordPress</title>
		<link>http://herselfswebtools.com/2009/12/some-bot-blocking-htaccess-hacks-for-wordpress.html</link>
		<comments>http://herselfswebtools.com/2009/12/some-bot-blocking-htaccess-hacks-for-wordpress.html#comments</comments>
		<pubDate>Sun, 06 Dec 2009 20:54:20 +0000</pubDate>
		<dc:creator>Linda MacPhee-Cobb</dc:creator>
				<category><![CDATA[security]]></category>
		<category><![CDATA[things you should know]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://herselfswebtools.com/?p=768</guid>
		<description><![CDATA[There are some great security plugins out there. But all WordPress security plugins require that the bot use the front door to the website. Otherwise the security plugin isn&#8217;t turned on. Your .htaccess file provides better coverage and is more efficient. I realize not everyone has access to .htaccess and that is why bot blocker, [...]]]></description>
			<content:encoded><![CDATA[<p>There are some great security plugins out there.  But all WordPress security plugins require that the bot use the front door to the website.  Otherwise the security plugin isn&#8217;t turned on.</p>
<p>Your .htaccess file provides better coverage and is more efficient. I realize not everyone has access to .htaccess and that is why <a href="http://herselfswebtools.com/2008/06/wordpress-plugin-to-prevent-bot-registrations.html">bot blocker</a>, <a href="http://herselfswebtools.com/2008/06/wordpress-security-plugin-block-scrapers-hackers-and-more.html">security plugin</a> and other security plugins exist.  But if you have access to .htaccess that is where you should be doing your security.</p>
<p>This will not stop all bots but should slow them down quite a bit.</p>
<p>Improved .htaccess file</p>
<p>^ &#8211; starts with<br />
$ &#8211; ends with</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;<br />
# block known trouble makers dumb enough to<br />
# announce who they are<br />
SetEnvIfNoCase User-Agent &#8220;^EmailSiphon&#8221; bad_bot<br />
SetEnvIfNoCase User-Agent &#8220;^EmailWolf&#8221; bad_bot<br />
SetEnvIfNoCase User-Agent &#8220;^ExtractorPro&#8221; bad_bot<br />
SetEnvIfNoCase User-Agent &#8220;^CherryPicker&#8221; bad_bot<br />
SetEnvIfNoCase User-Agent &#8220;^NICErsPRO&#8221; bad_bot<br />
SetEnvIfNoCase User-Agent &#8220;^Teleport&#8221; bad_bot<br />
SetEnvIfNoCase User-Agent &#8220;^EmailCollector&#8221; bad_bot<br />
SetEnvIfNoCase User-Agent &#8220;^LinkWalker&#8221; bad_bot<br />
SetEnvIfNoCase User-Agent &#8220;^Zeus&#8221; bad_bot<br />
SetEnvIfNoCase User-Agent &#8220;^botpaidtoclick&#8221; bad_bot<br />
SetEnvIfNoCase User-Agent &#8220;^Click Bot&#8221; bad_bot<br />
SetEnvIfNoCase User-Agent &#8220;^WebRipper&#8221; bad_bot<br />
SetEnvIfNoCase User-Agent &#8220;^Wget&#8221; bad_bot<br />
SetEnvIfNoCase User-Agent &#8220;^Snoopy&#8221; bad_bot<br />
SetEnvIfNoCase User-Agent &#8220;^Security Kol&#8221; bad_bot<br />
SetEnvIfNoCase User-Agent &#8220;^libwww-perl&#8221; bad_bot<br />
SetEnvIfNoCase User-Agent &#8220;^Java&#8221; bad_bot<br />
SetEnvIfNoCase User-Agent &#8220;^DataCha0s&#8221; bad_bot<br />
SetEnvIfNoCase User-Agent &#8220;^Grazer&#8221; bad_bot<br />
SetEnvIfNoCase User-Agent &#8220;^lwp-request&#8221; bad_bot<br />
SetEnvIfNoCase User-Agent &#8220;^lwp-trivial&#8221; bad_bot<br />
SetEnvIfNoCase User-Agent &#8220;^Morpheus&#8221; bad_bot<br />
SetEnvIfNoCase User-Agent &#8220;^Site Sniper&#8221; bad_bot<br />
SetEnvIfNoCase User-Agent &#8220;^Winnie Poh&#8221; bad_bot<br />
SetEnvIfNoCase User-Agent &#8220;^curl&#8221; bad_bot<br />
SetEnvIfNoCase User-Agent &#8220;^Akregator&#8221; bad_bot<br />
SetEnvIfNoCase User-Agent &#8220;^ac-baidu&#8221; bad_bot<br />
SetEnvIfNoCase User-Agent &#8220;(Ubuntu-feisty)$&#8221; bad_bot</p>
<p>&lt;Limit GET POST&gt;<br />
Order Allow,Deny<br />
Allow from all<br />
Deny from env=bad_bot<br />
&lt;/Limit&gt;</p>
<p># block directory browsing<br />
Options All -Indexes</p>
<p># protect some files<br />
&lt;files wp-config.php&gt;<br />
order allow,deny<br />
deny from all<br />
&lt;/files&gt;</p>
<p>&lt;files .htaccess&gt;<br />
order allow,deny<br />
deny from all<br />
&lt;/files&gt;</p>
<p># block bot registrations and send them to the front door<br />
# if you try to register and your accept statement only has */*<br />
# I&#8217;ll think you&#8217;re a bot<br />
&lt;IfModule mod_rewrite.c&gt;<br />
RewriteEngine On<br />
RewriteBase /<br />
RewriteCond %{REQUEST_METHOD} POST<br />
RewriteCond %{REQUEST_URI} .wp-login\.php*<br />
RewriteCond %{HTTP_ACCEPT} ^\*\/\*$<br />
RewriteRule (.*) <a href="http://yourdomain.com/" target="_blank">http://yourdomain.com/</a> [R=301,L]<br />
&lt;/IfModule&gt;</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;</p>
<p>Additional resources:<br />
<a href="http://perishablepress.com/press/2006/01/10/stupid-htaccess-tricks/">Perishable Press Stupid htaccess tricks</a><br />
<a href="http://www.josiahcole.com/2007/07/11/almost-perfect-htaccess-file-for-wordpress-blogs/">Almost Perfect htaccess File for WordPress</a></p>
]]></content:encoded>
			<wfw:commentRss>http://herselfswebtools.com/2009/12/some-bot-blocking-htaccess-hacks-for-wordpress.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Simple SEO hacks for WordPress</title>
		<link>http://herselfswebtools.com/2009/11/simple-seo-hacks-for-wordpress.html</link>
		<comments>http://herselfswebtools.com/2009/11/simple-seo-hacks-for-wordpress.html#comments</comments>
		<pubDate>Sun, 22 Nov 2009 17:49:01 +0000</pubDate>
		<dc:creator>Linda MacPhee-Cobb</dc:creator>
				<category><![CDATA[hack your template]]></category>
		<category><![CDATA[search engine]]></category>
		<category><![CDATA[things you should know]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://herselfswebtools.com/?p=765</guid>
		<description><![CDATA[Always there are trade offs. The more information you pull from your database to put in each page, the greater the drain on your server. To do well in search engine rankings you want individual titles and meta descriptions for each individual page. To do this in WordPress you pull the information from the database [...]]]></description>
			<content:encoded><![CDATA[<p>Always there are trade offs.  The more information you pull from your database to put in each page, the greater the drain on your server.</p>
<p>To do well in search engine rankings you want individual titles and meta descriptions for each individual page.  To do this in WordPress you pull the information from the database in your header.php file.</p>
<p>When I ran into server problems I took this out and yes, it hurt my search engine rankings.  Now that I&#8217;m with Media Temple and things seem to be running smooth I&#8217;m adding them back in.</p>
<p>Most, but not all, themes do have the title customized, few have meta tags customized and even fewer have them done properly.</p>
<p>To have an individual title for each separate post and page use this in place of the current title&lt;title&gt;&#8230;&lt;/title&gt; in your header file.</p>
<p>&lt;title&gt;&lt;?php if (is_single() || is_page() || is_archive()) { wp_title(&#8221;,true); } else { bloginfo(&#8216;name&#8217;); echo(&#8216; &amp;#8212; &#8216;); bloginfo(&#8216;description&#8217;); } ?&gt;&lt;/title&gt;</p>
<p>To have a customized meta description for each page and post use this in your head.php file</p>
<p>&lt;?php if (is_single() || is_page() ) : if ( have_posts() ) : while ( have_posts() ) : the_post(); ?&gt;<br />
&lt;meta name=&#8221;description&#8221; content=&#8221;&lt;?php the_excerpt_rss(); ?&gt;&#8221; /&gt;<br />
&lt;?php endwhile; endif; elseif(is_home()) : ?&gt;<br />
&lt;meta name=&#8221;description&#8221; content=&#8221;&lt;?php bloginfo(&#8216;description&#8217;); ?&gt;&#8221; /&gt;<br />
&lt;?php endif; ?&gt;</p>
<p>I looked at several SEO optimized themes at WordPress and very few had the custom meta tags.</p>
<p>To see if the meta tag is working on your site pull up an individual post:</p>
<p>In your browser look for view-&gt;page-&gt;source</p>
<p>Look through the top of the page source and you should see &lt;meta description and specific information for that page.</p>
<p>To see if the custom title is working bookmark the page and see if the title defaults to your blog name or the title of that page.</p>
<p>How do I know Google wants this.  Google told me.  Are you using <a href="http://www.google.com/webmasters.tools/">Google Webmaster Tools</a>?</p>
<p>And have you read <a href="http://www.google.com/webmasters/docs/search-engine-optimization-starter-guide.pdf">Google Search Engine Optimization Guide ( pdf )</a>?</p>
]]></content:encoded>
			<wfw:commentRss>http://herselfswebtools.com/2009/11/simple-seo-hacks-for-wordpress.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Trackback spam and xmlrpc</title>
		<link>http://herselfswebtools.com/2008/12/trackback-spam-and-xmlrpc.html</link>
		<comments>http://herselfswebtools.com/2008/12/trackback-spam-and-xmlrpc.html#comments</comments>
		<pubDate>Tue, 30 Dec 2008 16:24:31 +0000</pubDate>
		<dc:creator>Linda MacPhee-Cobb</dc:creator>
				<category><![CDATA[security]]></category>
		<category><![CDATA[things you should know]]></category>

		<guid isPermaLink="false">http://herselfswebtools.com/?p=392</guid>
		<description><![CDATA[One of the more fun things to do with your blog is to post to it remotely from Flickr, your cell phone, email etc. I remote post to my personal blog, the rest I sit at a computer and log in to to write posts. If you only write posts while logged onto WordPress you [...]]]></description>
			<content:encoded><![CDATA[<p>One of the more fun things to do with your blog is to post to it remotely from Flickr, your cell phone, email etc.  I remote post to my personal blog, the rest I sit at a computer and log in to to write posts.</p>
<p>If you only write posts while logged onto WordPress you don&#8217;t need xmlrpc.php.  This file is included only for remote publishing.  When I installed WordPress 2.7 I turned off trackbacks and xmlrpc in my settings.  </p>
<p>Despite turning it off the non-technical sites got slammed with trackback spam and comment postings from non users.  Akismet caught all of it but I&#8217;d rather not have it even hitting Akismet.</p>
<p>If you do not do remote publishing on your blog I strongly recommend deleting the xmlprc.php file.  Many of the WordPress security updates have come from problems with this file and assuming you haven&#8217;t done anything too creative with your WordPress install it&#8217;s your weakest link in security.</p>
<p>If you post to your blog from Flickr, email, Google Docs or similar clients you&#8217;ll need to leave in xmlrpc.php as they need it as an interface to talk to your blog.</p>
<p>If you allow trackbacks on your blog you need to leave the trackback.php file in your WordPress install.  If like me, you don&#8217;t allow trackbacks, go ahead and delete trackback.php.  For me the spam to legit trackback ratio is just too high to be worth the trouble.</p>
<p>I don&#8217;t know why turning both of these off in 2.7 doesn&#8217;t work, perhaps a future patch will correct it?</p>
<p>More information:<br />
<a href="http://www.bloggingtips.com/2008/07/22/how-to-combat-wordpress-trackback-spam/">How to combat WordPress trackback spam</a><br />
<a href="http://www.connectedinternet.co.uk/2007/02/28/guide-to-reducing-wordpress-trackback-spam-and-comment-spam/">Guide to reducing WordPress Trackback spam and comments</a><br />
<a href="http://phpxmlrpc.sourceforge.net/">XML-RPC at SourceForge</a><br />
<a href="http://codex.wordpress.org/XML-RPC_Support">XML-RPC WordPress Codex</a><br />
<a href="http://codex.wordpress.org/Weblog_Client">Weblog Client</a> (lists clients that require xmlrpc on WordPress )<br />
<a href="http://josephscott.org/archives/2008/12/wordpress-27-released-xml-rpc-and-atompub-changes/">XML-RPC Changes in WordPress 2.7</a><br />
<a href="http://arxiv.org/abs/0812.4181">XML Rewriting Attacks: Existing Solutions and their Limitations</a></p>
]]></content:encoded>
			<wfw:commentRss>http://herselfswebtools.com/2008/12/trackback-spam-and-xmlrpc.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

