<?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>Coyne Technology Systems</title>
	<atom:link href="http://blog.coynetechsystems.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.coynetechsystems.com</link>
	<description>The Technology Station</description>
	<lastBuildDate>Wed, 21 Sep 2011 16:40:45 +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>Implementation of SEO Friendly URLs With PHP &#8211; Part 1</title>
		<link>http://blog.coynetechsystems.com/web-site/implementation-of-seo-friendly-urls-with-php-part-325/</link>
		<comments>http://blog.coynetechsystems.com/web-site/implementation-of-seo-friendly-urls-with-php-part-325/#comments</comments>
		<pubDate>Wed, 11 May 2011 21:18:32 +0000</pubDate>
		<dc:creator>kevin</dc:creator>
				<category><![CDATA[Web Site]]></category>
		<category><![CDATA[duplicate content]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[google webmaster]]></category>
		<category><![CDATA[search]]></category>
		<category><![CDATA[seo]]></category>
		<category><![CDATA[seo friendly]]></category>
		<category><![CDATA[sitemap]]></category>
		<category><![CDATA[url]]></category>

		<guid isPermaLink="false">http://blog.coynetechsystems.com/?p=325</guid>
		<description><![CDATA[Just about all the information you can read on Search Engine Optimization (SEO) with regard to urls being SEO friendly includes discussions on using them, however if you are not using a Content Management System (CMS) to implement them, you may be doing yourself more harm than good.  This two-part article discusses how to implement SEO urls [...]]]></description>
			<content:encoded><![CDATA[<p>Just about all the information you can read on Search Engine Optimization (SEO) with regard to urls being SEO friendly includes discussions on using them, however if you are not using a Content Management System (CMS) to implement them, you may be doing yourself more harm than good.  This two-part article discusses how to implement SEO urls in your website if you are building your site from the ground up.  Part 1 discusses the rational behind the article and Part -2 walks through an example of a webpage that lists news articles and shows individual articles within the site utilizing SEO friendly URLS.  It also discusses the .htaccess file changes that would need to be made to ensure there is only one version of the url availble to web browsers and automatic robots.</p>
<p><span id="more-325"></span></p>
<p>The genisis of this article is that one of our clients had a well established website where they were generating dynamic pages in PHP which also generated a sitemap and submitted it to their <a title="Google Webmasters" href="http://www.google.com/webmasters" target="_blank">Google Webmaster </a>account upon change.  The sitemap contained well over 1000 URLs and was correctly read in Google Webmasters as having the correct number of submitted URLs, however Google Webmasters showed only 200 files in the Index for that sitemap.  This of course conflicted with any site search on Google Search which showed results of over 1000!  So Google Search knew about over 1000 pages, but was not attributing them to being the links in the sitemap, a definate head scratcher!</p>
<p>In examining their implementation it was determined that the client had taken a short cut in implenting their list of news articles.  Instead of printing out links to individual articles in the SEO friendly manner, their URLs were pointing to a non-SEO friendly page.  The links on their page pointed to:</p>
<p><code>http://www.example.com/news.php?article_id=2</code></p>
<p>instead of:</p>
<p><code>http://www.example.com/news/this-is-a-fantastic-article/</code></p>
<p>However, the sitemap contained the second version.</p>
<p>The problem with this is that Google has robots that crawl the site to find content in addtion to any sitemaps that are provided.  By using the first version on their site, Google searched the site and found the non-SEO friendly version.  They created duplicate content in the search engine&#8217;s eyes by having two urls that pointed to the exact same content and through the mystery that is Google&#8217;s back end processing, selected the unintended version.   What they really needed to do is be consistent and use the second version everywhere they have a link to that article, which is sometimes can be easier said than done.   You must ensure that your content always uses the SEO friendly URL (RSS feeds, backlinks, internal links, etc.) that way you will not get penalized for duplicate content.</p>
<p>In this instance we changed the URLs sitewide and made them all use the SEO friendly version and the client was able to increase their Indexed URL count from the sitemap to a number much closer to the number of URLs submitted in the Google Webmaster Tools.</p>
<p>In Part 2 of this article, we will implement a database driven news feed that generates and utilizes SEO friendly URLs for a website.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.coynetechsystems.com/web-site/implementation-of-seo-friendly-urls-with-php-part-325/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Defining Custom Page Error Handlers with .htaccess</title>
		<link>http://blog.coynetechsystems.com/web-server/defining-custom-page-error-handlers-with-htaccess-314/</link>
		<comments>http://blog.coynetechsystems.com/web-server/defining-custom-page-error-handlers-with-htaccess-314/#comments</comments>
		<pubDate>Mon, 09 May 2011 18:05:04 +0000</pubDate>
		<dc:creator>kevin</dc:creator>
				<category><![CDATA[Web Server]]></category>
		<category><![CDATA[401]]></category>
		<category><![CDATA[403]]></category>
		<category><![CDATA[404]]></category>
		<category><![CDATA[500]]></category>
		<category><![CDATA[authorization required]]></category>
		<category><![CDATA[bad request]]></category>
		<category><![CDATA[error]]></category>
		<category><![CDATA[error pages]]></category>
		<category><![CDATA[errors]]></category>
		<category><![CDATA[errror handler]]></category>
		<category><![CDATA[forbidden]]></category>
		<category><![CDATA[handler]]></category>
		<category><![CDATA[htaccess]]></category>
		<category><![CDATA[not found]]></category>
		<category><![CDATA[server error]]></category>
		<category><![CDATA[unauthorized]]></category>

		<guid isPermaLink="false">http://blog.coynetechsystems.com/?p=314</guid>
		<description><![CDATA[Have you ever gotten to a web page on a website where the document did not exist where the error page matched the look and feel of the site?  Ever wonder how to accomplish that on your site?  If you are using an Apache Web Server with the ability to modify the .htaccess file, changing [...]]]></description>
			<content:encoded><![CDATA[<p>Have you ever gotten to a web page on a website where the document did not exist where the error page matched the look and feel of the site?  Ever wonder how to accomplish that on your site?  If you are using an <a href="http://httpd.apache.org/">Apache Web Server</a> with the ability to modify the .htaccess file, changing the error pages to match your site is simple!</p>
<p><span id="more-314"></span></p>
<p>If you want to customize the error pages that are displayed for your site and you wrote the site from the ground up (NOT utilizing a Content Managment System such as <a href="http://www.wordpress.org">WordPress</a>, <a href="http://drupal.org/">Drupal</a>, <a href="http://www.joomla.org/">Joomla</a>, etc) creating the templates to display and some simple additions to your .htaccess file are all that are needed.</p>
<p>First, you will need to create a directory inside of your website for the templates to be stored such as &#8216;/errors&#8217; which can be accessed at your website: <a href="http://www.example.com/errors">http://www.example.com/errors</a>.  Although this directory is not absolutely necessary, it will keep things cleaner in your site.</p>
<p>The major errors that you will want to handle are:</p>
<ul>
<li>400 &#8211; Bad Request</li>
<li>401 &#8211; Authorization Required</li>
<li>403 &#8211; Forbidden</li>
<li>404 &#8211; Not Found</li>
<li>500 &#8211; Server Error</li>
</ul>
<p>Create a webpage for each of these types inside your &#8216;errors&#8217; directory and give them any name you prefer, hopefuly something meaningful such as:</p>
<ul>
<li>bad_request.html</li>
<li>auth_required.html</li>
<li>forbidden.html</li>
<li>not_found.hmtl</li>
<li>server_error.html</li>
</ul>
<p>In each of the cases, you can create server side scripts that will be executed when the error is triggered as well.  If your normal webpages are setup to use server side scripts such as PHP then you can use PHP in your error handlers as well to email or log to a database when pages that don&#8217;t exist are requested for example.  They are simply web pages that will be displayed when the errors are triggered.</p>
<p>Once you have your files setup, the .htaccess magic happens.  You will add a line to your .htacces file for each of the pages to tell the Apache Web Server where to get the web pages to serve up when these errors are triggered.  The format for the .htaccess is:</p>
<p style="padding-left: 30px;">ErrorDocument <em>code response</em></p>
<p>For each of the errors we listed above with each of the pages created in the errors directory our additional lines in the .htaccess file will be:</p>
<p><code><br />
ErrorDocument 400 /errors/bad_request.html<br />
ErrorDocument 401 /errors/auth_required.hml<br />
ErrorDocument 403 /errors/forbidden.html<br />
ErrorDocument 404 /errors/not_found.html<br />
ErrorDocument 500 /errors/server_error.html<br />
</code></p>
<p>That&#8217;s all there is to it! Simply create the html code to be displayed and point the Apache Web Server to the documents using the ErrorDocument directive in the .htaccess file.</p>
<p>For this example we have created handlers for the most common types of Apache Web Server responses that you would want to define. You do not need to generate any of these or you could add adddional handlers as your website demands. <a href="http://httpd.apache.org/docs/current/mod/core.html#errordocument">Read the full documentation on the Apache ErrorDirective</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.coynetechsystems.com/web-server/defining-custom-page-error-handlers-with-htaccess-314/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Rewriting SEO URLs When Moving WordPress to a Sub-Domain</title>
		<link>http://blog.coynetechsystems.com/web-server/rewriting-seo-urls-when-moving-wordpress-to-a-sub-domain-311/</link>
		<comments>http://blog.coynetechsystems.com/web-server/rewriting-seo-urls-when-moving-wordpress-to-a-sub-domain-311/#comments</comments>
		<pubDate>Tue, 03 May 2011 20:03:22 +0000</pubDate>
		<dc:creator>kevin</dc:creator>
				<category><![CDATA[Web Server]]></category>
		<category><![CDATA[apache]]></category>
		<category><![CDATA[blog]]></category>
		<category><![CDATA[mod_rewrite]]></category>
		<category><![CDATA[seo]]></category>
		<category><![CDATA[subdomain]]></category>
		<category><![CDATA[web server]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://www.coynetechsystems.com/blog/?p=311</guid>
		<description><![CDATA[If you have installed your WordPress blog to a sub-directory only later to determine you want to attach a sub domain to your site to point to your blog, you may find that all your SEO urls are now broken.  The fix to this problem is a simple Apache url rewrite that can redirect your [...]]]></description>
			<content:encoded><![CDATA[<p>If you have installed your <a title="WordPress" href="http://www.wordpress.org" target="_blank">WordPress</a> blog to a sub-directory only later to determine you want to attach a sub domain to your site to point to your blog, you may find that all your SEO urls are now broken.  The fix to this problem is a simple <a title="Apache Web Server" href="http://httpd.apache.org/" target="_blank">Apache</a> url rewrite that can redirect your users to the new article.</p>
<p><span id="more-311"></span></p>
<p>Here is the case that we find most often: You install your blog on your main domain inside a sub directory so that your urls look like &#8216;http://www.example.com/blog&#8217;  and wrote some articles such as &#8216;http://www.example.com/blog/2011/11/this-is-how-you-do-it/&#8217;.  All is fine and dandy until you decide that you want to have a separate sub domain for your blog and relocate the root to &#8216;http://blog.example.com&#8217; and your article looks like: &#8216;http://blog.example.com/2011/11/this-is-how-you-do-it/&#8217;.  All is well except for the people that bookmarked the old url will get a 404 error response when trying to access that old bookmark or backlink that no longer points to the article.  With a quick change of your .htaccess file, you can make the old urls point to the new ones.  Use this line in your .htaccess file in the blog directory:</p>
<p>RewriteCond %{HTTP_HOST} !^blog\.example\.com$<br />
RewriteRule ^(.*)$ http://blog.example.com/$1 [R=301,L]</p>
<p>The RewriteCond is the conditions that must be met to allow the RewriteRule to take place and checks to see if the current URL does not already have the blog sub domain.   If it does not (the ! preceeding it) then the Rule can take place, which is rewrite anything in the original request to the new blog sub domain address.  Note that this is put into the .htaccess in the blog sub-directory so the rewrite engine will remove that before matching the string in the rule.  It also sends a 301 redirect (R=301) and does not process further (L).  These can be changed as you see fit based on the <a title="Apache Web Server mod_rewrite Documentation" href="http://httpd.apache.org/docs/current/mod/mod_rewrite.html" target="_blank">Apache mod-rewrite documentation</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.coynetechsystems.com/web-server/rewriting-seo-urls-when-moving-wordpress-to-a-sub-domain-311/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Facebook announces the Send Social Media Button</title>
		<link>http://blog.coynetechsystems.com/facebook-2/facebook-announces-the-send-social-media-button-302/</link>
		<comments>http://blog.coynetechsystems.com/facebook-2/facebook-announces-the-send-social-media-button-302/#comments</comments>
		<pubDate>Tue, 26 Apr 2011 13:11:29 +0000</pubDate>
		<dc:creator>kevin</dc:creator>
				<category><![CDATA[Facebook]]></category>
		<category><![CDATA[developer]]></category>
		<category><![CDATA[facebook]]></category>
		<category><![CDATA[FBML]]></category>
		<category><![CDATA[javascript]]></category>

		<guid isPermaLink="false">http://www.coynetechsystems.com/blog/?p=302</guid>
		<description><![CDATA[Yesterday, the developers at Facebook announced the Send Button to its list of social media plug-ins. This button is similar to the Like Button but allows you to send messages relating to the website that the button was found on. This new Socal Button allows you to send private messages to a targeted audience regarding [...]]]></description>
			<content:encoded><![CDATA[<p>Yesterday, the developers at Facebook announced the Send Button to its list of social media plug-ins. This button is similar to the Like Button but allows you to send messages relating to the website that the button was found on.<span id="more-302"></span><br />
This new Socal Button allows you to send private messages to a targeted audience regarding the page you are visiting. From the Facebook Developer Page: &#8220;People will have the option to send your URL in an inbox message to their Facebook friends, to the group wall of any Facebook group they are a member of, and as an email to any email address.&#8221;.<br />
This social button is just as easy to implement as the Facebook Like Button and if you already have a Like Button, you can add the Facebook Send Button even easer by adding <code>send=true</code> to your Like Button&#8217;s attributes.<br />
The details of the announcement can be found on the Facebook developer blog at <a href="http://developers.facebook.com/blog/" target="_blank">http://developers.facebook.com/blog/</a> and the details of the social plugin can be found at the Send Button plug-in&#8217;s page at <a href="http://developers.facebook.com/docs/reference/plugins/send/" target="blank">http://developers.facebook.com/docs/reference/plugins/send/</a>.</p>
<p>We have incorporated this button on one of our client&#8217;s home page.  To see it in action visit <a href="http://www.fairwaysandroughs.com">http://www.fairwaysandroughs.com</a> it is located near the top right of the page.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.coynetechsystems.com/facebook-2/facebook-announces-the-send-social-media-button-302/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Adding www To Domains Using htaccess</title>
		<link>http://blog.coynetechsystems.com/web-server/adding-www-to-domains-using-htaccess-294/</link>
		<comments>http://blog.coynetechsystems.com/web-server/adding-www-to-domains-using-htaccess-294/#comments</comments>
		<pubDate>Wed, 29 Dec 2010 05:11:46 +0000</pubDate>
		<dc:creator>kevin</dc:creator>
				<category><![CDATA[Web Server]]></category>
		<category><![CDATA[apache]]></category>
		<category><![CDATA[how-to]]></category>
		<category><![CDATA[htaccess]]></category>
		<category><![CDATA[HTTP_HOST]]></category>
		<category><![CDATA[mod_rewrite]]></category>
		<category><![CDATA[webserver]]></category>
		<category><![CDATA[website]]></category>

		<guid isPermaLink="false">http://www.coynetechsystems.com/blog/?p=294</guid>
		<description><![CDATA[Many times when developing your website you will want to require your website to be accessable using http://www.example.com as opposed to http://example.com. This is easily accomplished using the .htaccess file and the mod_rewrite plugin. Three lines in the .htaccess file are required to have every page contain the host www. In order to utilize this [...]]]></description>
			<content:encoded><![CDATA[<p>Many times when developing your website you will want to require your website to be accessable using http://www.example.com as opposed to http://example.com.  This is easily accomplished using the .htaccess file and the mod_rewrite plugin.</p>
<p><span id="more-294"></span></p>
<p>Three lines in the .htaccess file are required to have every page contain the host www.  In order to utilize this method, you must be using a webserver with the ability to modify the running server using .htaccess files that are located in your webserver&#8217;s directory.  In addition, the mod_rewrite module must be installed and activated on the server.</p>
<p>The following lines show the entries in your .htaccess file</p>
<p><code><br />
RewriteEngine on<br />
RewriteCond %{HTTP_HOST} ^example.com$ [NC]<br />
RewriteRule ^(.*)$ http://www.example.com/$1 [L,R=301]<br />
</code></p>
<p>The first line tells the server to turn on the rewrite engine and allow RewriteCond and RewriteRule (among others) to be able to modify the request.</p>
<p>The second line defines a condition that must be met for the RewriteRule to take place.  The condition is read in sentence format as &#8220;If the request is to the host &#8216;example.com&#8217; without regard to case&#8221;.  The %{HTTP_HOST} is a variable that the webserver sends to the mod_rewrite engine when a request comes in from a browser.  if the user types in &#8216;http://example.com&#8217; into the browser to visit the page, the variable %{HTTP_HOST} will have the value &#8216;example.com&#8217;.  If the user types in &#8216;http://sub.docs.example.com/somepage.html&#8217; then the %{HTTP_HOST} will have the value &#8216;sub.docs.example.com&#8217;.  As you can see, the value of %{HTTP_HOST} will contain only the host portion of the request.  The second part of the line is what the condition is equal to.  This part is actually a pearl compatible regular expression (PCRE) (with modifications).  The &#8216;^&#8217; is a special character and marks the begining of the string to test and the &#8216;$&#8217; marks the end of the string to test.  In this example we want to make sure it is exactly equal to &#8216;example.com&#8217; so the PCRE is exactly the string we want to searc for.  The &#8216;[NC]&#8216; tells us to do the test without regard to case so the condition will be met if the user types &#8216;example.com&#8217;, &#8216;Example.com&#8217;, &#8216;EXAMPLE.COM&#8217; or any other variation of lower or upper characters.</p>
<p>The third line is actually the one that does the rewriting.  It will rewrite if the previous condition is set and the engine is on.  There are three parts in this line after the RewriteRule and the first two are closely related.  The first part is a PCRE search string for the query string (&#8216;somepage.html&#8217; for the example &#8216;http://www.example.com/somepage.html).  Again this is a simple PCRE since we want to take it all we grab any character as many as there are enclosed between the start special character &#8216;^&#8217;, and the end special character &#8216;$&#8217;.  The PCRE search pattern is simply (.*).  When this matches it will be used in the latter portion as the value for the substitution pattern $1.  The second part of the RewriteRule tells the webserver what the new request should be.  In our case we want the request to be &#8216;http://www.example.com/ plus anything that was in the original request which is the data that was found appended to the previous request and contained in the substitution pattern $1.  Appending these two together gives us our new request.  The third part of the line [L,R=301] tells the mod_rewrite module to stop processing with the &#8216;L&#8217; and send back the client a 301 Redirect.</p>
<p>The mod_rewrite engine is a powerfull tool to use in developing websites.  It can also be very complex and difficult to troubleshoot.  This is a simple example of using mod_rewrite, but the <a href="">Appache documentation on mod_rewrite</a> can be quite overwhelming.  We felt an in-depth discussion on this simple concept would be valuable for the beginner web developer in getting started in mod_rewrite.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.coynetechsystems.com/web-server/adding-www-to-domains-using-htaccess-294/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Pitfalls of using Cron and PHP</title>
		<link>http://blog.coynetechsystems.com/web-site/pitfalls-of-using-cron-and-php-287/</link>
		<comments>http://blog.coynetechsystems.com/web-site/pitfalls-of-using-cron-and-php-287/#comments</comments>
		<pubDate>Tue, 21 Dec 2010 04:10:02 +0000</pubDate>
		<dc:creator>kevin</dc:creator>
				<category><![CDATA[Web Site]]></category>
		<category><![CDATA[automate]]></category>
		<category><![CDATA[cron]]></category>
		<category><![CDATA[cron-job]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[pitfalls]]></category>
		<category><![CDATA[website]]></category>

		<guid isPermaLink="false">http://www.coynetechsystems.com/blog/?p=287</guid>
		<description><![CDATA[Cron is a essential website tool to automate tasks on your website. Cron is a process that runs on the same server as your webserver that allows you to run scripts at specific times and dates such as once a month, once a week, every 20 minutes or the 4th day of November at 2pm. [...]]]></description>
			<content:encoded><![CDATA[<p>Cron is a essential website tool to automate tasks on your website. Cron is a process that runs on the same server as your webserver that allows you to run scripts at specific times and dates such as once a month, once a week, every 20 minutes or the 4th day of November at 2pm. So you spend some time developing your cron PHP scrip and you believe the script is setup correctly to run, you wait for the time it is expected to run and&#8230;NOTHING! Now what?<span id="more-287"></span></p>
<p>One of the main items to keep in mind when using cron jobs is that the executable that runs your cron jobs is a <strong>separate process</strong> than the webserver. This means that the &#8220;standard&#8221; webserver variables are not available to the cron script.</p>
<p>Using variables such as $_SERVER[SELF] are generated by the WEBSERVER, but a running cron job is run from the CRON DAEMON so these variables will not represent what you may be expecting from the webserver.</p>
<p>If your webserver supports .htaccess files, they are checked for for the configuration before the webserver serves up your page. You can make changes to the php configuration within the .htaccess files by setting the options there. Again, if you make changes to the php configuration within the WEBSERVER, they will not be available to the running cron job. You must explicitly make the changes witin the php file or from within a config file that is passed as a parameter to the php process that cron runs.</p>
<p>If you keep in mind that the cron daemon is separate than your webserver, you can avoid some easy to overlook common pitfalls of using cron jobs.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.coynetechsystems.com/web-site/pitfalls-of-using-cron-and-php-287/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Fairways and Roughs Website Developed</title>
		<link>http://blog.coynetechsystems.com/services/fairways-and-roughs-website-developed-281/</link>
		<comments>http://blog.coynetechsystems.com/services/fairways-and-roughs-website-developed-281/#comments</comments>
		<pubDate>Tue, 02 Nov 2010 14:34:01 +0000</pubDate>
		<dc:creator>kevin</dc:creator>
				<category><![CDATA[Services]]></category>
		<category><![CDATA[calendar]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[events]]></category>
		<category><![CDATA[golf]]></category>
		<category><![CDATA[golfing]]></category>
		<category><![CDATA[poll]]></category>
		<category><![CDATA[shows]]></category>
		<category><![CDATA[social]]></category>
		<category><![CDATA[update]]></category>
		<category><![CDATA[website]]></category>

		<guid isPermaLink="false">http://www.coynetechsystems.com/blog/?p=281</guid>
		<description><![CDATA[Coyne Technology Systems is pleased to announce the development of the Fairways and Roughs website. This website design is a custom developed website for golfers and golf enthusiasts. The design uses a custom CMS style website with the capability to hold polling events, calendar events, and user-to-user messages. It also includes friend and group capabilities. [...]]]></description>
			<content:encoded><![CDATA[<p>Coyne Technology Systems is pleased to announce the development of the <a href="http://www.fairwaysandroughs.com">Fairways and Roughs website</a>.  This website design is a custom developed website for golfers and golf enthusiasts.  The design uses a custom CMS style website with the capability to hold polling events, calendar events, and user-to-user messages.  It also includes friend and group capabilities.  We have also created statistical details for tracking golf games and golf history from a site and user perspective.  The site allows users to track golf games and discuss golf games and golf topics.<br />If you would like to check out the site, you can follow the link to <a href="http://www.fairwaysandroughs.com">Fairways and Roughs website</a> and signup for a free account to start tracking your golf game now!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.coynetechsystems.com/services/fairways-and-roughs-website-developed-281/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Announcing the release of Version 1.1 of the AVR Logic Analyzer plug in to the Atmel™ AVR Studio</title>
		<link>http://blog.coynetechsystems.com/software-updates/announcing-the-release-of-version-1-1-of-the-avr-logic-analyzer-plug-in-to-the-atmel%e2%84%a2-avr-studio-277/</link>
		<comments>http://blog.coynetechsystems.com/software-updates/announcing-the-release-of-version-1-1-of-the-avr-logic-analyzer-plug-in-to-the-atmel%e2%84%a2-avr-studio-277/#comments</comments>
		<pubDate>Mon, 28 Jun 2010 15:36:52 +0000</pubDate>
		<dc:creator>kevin</dc:creator>
				<category><![CDATA[Software Updates]]></category>
		<category><![CDATA[Atmel]]></category>
		<category><![CDATA[AVR]]></category>
		<category><![CDATA[AVR Studio 4]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[plug in]]></category>
		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://www.coynetechsystems.com/blog/?p=277</guid>
		<description><![CDATA[We are pleased to announce the release of the AVR Logic Analyzer plug in Version 1.1 to the Atmel™ AVR Studio 4 development environment. The AVR Logic Analyzer displays IO port information for the AVR processor as defined in the AVR Studio project in a graphical manner. It records all of the IO port values [...]]]></description>
			<content:encoded><![CDATA[<p>We are pleased to announce the release of the AVR Logic Analyzer plug in Version 1.1 to the Atmel™ AVR Studio 4 development environment. The AVR Logic Analyzer displays IO port information for the AVR processor as defined in the AVR Studio project in a graphical manner. It records all of the IO port values as they are updated and allows you to see historical port value changes.<span id="more-277"></span></p>
<p>The main features of the AVR Logic Analyzer plug in are:</p>
<ul>
<li>Built for the Atmel™ AVR Studio 4 development system</li>
<li>Fully integrated into the AVR Studio window management system for ease of layout</li>
<li>Reads usable port configuration based on selected processor</li>
<li>Stores up to 32,000 historical port values and Data Direction Register values for each port on the processor</li>
<li>Displays a configurable number of visible port values for each selected port</li>
<li>User can scroll back through historical port values to visualize value changes</li>
<li>Quickly turn on or off the display of a single port (i.e. PB3) or a group of ports (i.e. PORTB)</li>
<li>Allows the user to select different colors for a port state of on and off</li>
<li>Display the port states in a different color if the port is setup to be an input as masked by the Data Direction Register (DDR)</li>
<li>Saves user options in the project file</li>
</ul>
<p>More information on the AVR Logic Analyzer plug in can be found at the plug in website at <a href="http://www.coynetechsystems.com/avrlogicanalyzer/index.php">http://www.coynetechsystems.com/avrlogicanalyzer/index.php</a>.<br />
Coyne Technology Systems develops hardware, software, and embedded solutions and has over 15 years of experience in developing systems for the Personal Computer, internet and networked devices, handheld devices, and embedded systems. More information can be found on our website at <a href="http://www.coynetechsystems.com/index.php">http://www.coynetechsystems.com/index.php</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.coynetechsystems.com/software-updates/announcing-the-release-of-version-1-1-of-the-avr-logic-analyzer-plug-in-to-the-atmel%e2%84%a2-avr-studio-277/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Automatically Creating WHMCS Knowledgebase Sitemaps</title>
		<link>http://blog.coynetechsystems.com/whmcs/automatically-creating-whmcs-knowledgebase-sitemaps-224/</link>
		<comments>http://blog.coynetechsystems.com/whmcs/automatically-creating-whmcs-knowledgebase-sitemaps-224/#comments</comments>
		<pubDate>Wed, 02 Jun 2010 18:42:22 +0000</pubDate>
		<dc:creator>kevin</dc:creator>
				<category><![CDATA[WHMCS]]></category>
		<category><![CDATA[add-on]]></category>
		<category><![CDATA[how-to]]></category>
		<category><![CDATA[knowledgebase]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[script]]></category>
		<category><![CDATA[sitemap]]></category>

		<guid isPermaLink="false">http://www.coynetechsystems.com/blog/?p=224</guid>
		<description><![CDATA[WHMCS is a client management, billing, and support solution and is widely used as the back end system to manage Web Hosting sites. WHMCS includes a built in knowledge base system where the administrator can create categories and articles to support clients in performing common web hosting tasks. In version 4.1.1 of WHMCS, the ability to use [...]]]></description>
			<content:encoded><![CDATA[<p><a title="WHMCS Home Page" href="http://www.whmcs.com/members/aff.php?aff=4861" target="_blank">WHMCS</a> is a client management, billing, and support solution and is widely used as the back end system to manage Web Hosting sites. WHMCS includes a built in knowledge base system where the administrator can create categories and articles to support clients in performing common web hosting tasks. In version 4.1.1 of WHMCS, the ability to use Search Engine Optimized (SEO) file names from the knowledge base (KB) is available. Creating sitemaps for theses were often tedious and error prone since each sitemap entry had to be added manually from the KB article title. This article describes the WHMCS admin add on module to overcome this manual entry and automatically generate the sitemap file from the WHMCS database entries.<span id="more-224"></span></p>
<p>A sitemap file is an XML file that defines the pages that you provide to search engines that you specify the files that are to be indexed in your site.  By using this protocol, you specify the exact pages that want the search engines to find, even though they may be database driven, or difficult to find through deep links on your site.  Sitemap files can be indexes where they contain a list of other sitemap files or sitemap entries containing links to web pages.  More information on the sitemaps protocol can be found at <a title="Sitemaps Home Page" href="http://www.sitemaps.org" target="_blank">sitemaps.org</a>.</p>
<p>This add on reads the knowledge base categories and articles from the WHMCS database tables and generates a list of the SEO titles from those table entries in a sitemap entry file.  It then reads the specified sitemap file, if it exists, and matches up the database table entries with the entries in the sitemap file.  If there are KB categories or articles that are not included in the sitemap file, the WHMCS admin is given the ability to add the articles to the sitemap file.  If the categories and articles are already in the sitemap file, then the WHMCS admin has the ability to update the timestamp in the sitemap file or remove the item from the sitemap file entirely.  The sitemap file can also contain additional static entries that will be listed in a separate table at the bottom of the page.   The WHMCS admin then has the ability to remove or update the timestamps on the static items.</p>
<p>The problem with creating sitemap entries from the WHMCS database is that the KB articles and categories are generated from the database versus stored as files in the file system which would contain timestamps of when the file was last written.  The WHMCS database does not store the time the article or category is updated so there is no way to know when the last update to the article was made.  To overcome this in the add on, the WHMCS admin must manually specify when to update the sitemap lastmod time of the articles by checking the box in the update column and re-generating the sitemap file.</p>
<p>To access this WHMCS module, the admin logs in and selects the Addon Modules menu item under the Utilities Menu.  From there, they are presented with a list of add on modules available.  If the KB Sitemap Generator was installed correctly, the module is listed as Kb Sitemap Gen.  Clicking on this title will access the module, which first must be installed.  To install, select the button that says &#8220;Install&#8221;.  This will create an additional WHMCS database table which will hold the sitemap file name.</p>
<p>Once the add on module is installed, the module presents three general areas of information. 1) WHMCS and Sitemap File information, 2) Table to manage WHMCS KB database data in the sitemap file, and 3) Table to manage static sitemap tables.</p>
<p>The WHMCS and Sitemap File information shows the WHMCS Root Path which is the path WHMCS believes it is installed in.  This URL path will be used to generate the URL in the sitemap file.  The next entry in this area shows the file path that the sitemap file will be created or exists in.  It defaults to the path where WHMCS is installed plus the file name &#8220;kbsitemap.xml&#8221;.  The file name and location can be changed by entering optional additional path information and file name and pressing the &#8220;Set File&#8221; button.  This will cause the add on module to store the new file location in its database table and will be available for future use of the module.  The input box will accept additional path information as well, so the sitemap file could reside in a different location.  For example setting the file to ../kbsitemap.xml will generate a sitemap file one directory higher than the WHMCS install directory.</p>
<p>The &#8220;Files From WHMCS KB Database&#8221; table lists the Type, URL , LastMod, and three check boxes to Add, Update, or Remove the item.  The Type is whether the item is a Category or an Article and each type is displayed with a different color in the table.  The URL is the address that is generated from the WHMCS installed directory plus the knowledge base sub-directory, plus the category or article id from the database, and finally the SEO friendly filename generated from the title or name of the article or category.  The LastMod column is the LastMod time from the sitemap if the item is in the sitemap, otherwise it is empty if it has not been generated.  The three check box columns allow the admin to manage the items in the sitemap file and all changes are made when the user presses the &#8220;Make Changes To Sitemap&#8221; button at the bottom of the admin module.  If the item is already in the sitemap file, the Add check box will be disabled and if the item is not yet in the sitemap file, the Update and Remove check boxes will be disabled.</p>
<p>The following image shows the WHMCS and Sitemap File Information as well as the begining of the table that lists the Files From WHMCS KB database.</p>
<div id="attachment_270" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.coynetechsystems.com/blog/wp-content/uploads/2010/06/KBSMgen_top.jpg"><img class="size-medium wp-image-270" title="KB Sitemap Generator Top Half" src="http://www.coynetechsystems.com/blog/wp-content/uploads/2010/06/KBSMgen_top-300x148.jpg" alt="KB Sitemap Generator Top Half" width="300" height="148" /></a><p class="wp-caption-text">KB Sitemap Generator Top Half</p></div>
<p style="text-align: center;">&nbsp;</p>
<p>In addition to the sitemap information generated from the WHMCS database, this add on module can also manage additional static sitemap file information.  Beneath the Files From WHMCS KB Database area, the add on module will display sitemap entries that are not generated from the WHMCS knowledge base database tables.  These could include static entries or KB article and category that were manually entered and contained spelling or format errors.  The image below shows several entries that were static entries for the affiliates, tutorials, downloads, and announcements pages.  From this table the admin can Update or Remove the items in the sitemap file.</p>
<p>The image below shows the bottom of the WHMCS KB database table items as well as the static sitemap items.</p>
<div id="attachment_271" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.coynetechsystems.com/blog/wp-content/uploads/2010/06/KBSMgen_bottom.jpg"><img class="size-medium wp-image-271" title="KB Sitemap Generator Bottom Half" src="http://www.coynetechsystems.com/blog/wp-content/uploads/2010/06/KBSMgen_bottom-300x207.jpg" alt="KB Sitemap Generator Bottom Half" width="300" height="207" /></a><p class="wp-caption-text">KB Sitemap Generator Bottom Half</p></div>
<p>Now you can add your automatically generated sitemap to a sitemap index file.  For more information on using sitemaps and sitemap index files, click on the <a title="Building A Comprehensive Sitemap for SEO" href="http://www.coynetechsystems.com/blog/web-site/building-a-comprehensive-sitemap-for-seo-160/" target="_self">link to the article &#8221;Building A Comprehensive Sitemap for SEO&#8221; in our blog</a>.</p>
<p>This add on was developed for WHMCS version 4.1.1.   For more information on WHMCS, visit their <a title="WHMCS Home PAge" href="http://www.whmcs.com/members/aff.php?aff=4861" target="_blank">home page</a>.</p>
<p>You can download the script as a zip file for free in <a title="WHMCS Knowledgebase Sitemap Generator" href="http://www.coynetechsystems.com/shop/index.php?main_page=product_info&amp;cPath=4&amp;products_id=9" target="_self">our shop by following this link</a>.  Installation instructions can be found in the text file contained in the zip file.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.coynetechsystems.com/whmcs/automatically-creating-whmcs-knowledgebase-sitemaps-224/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Announcing The Release of TailWin Log File Viewer</title>
		<link>http://blog.coynetechsystems.com/software-updates/announcing-the-release-of-tailwin-log-file-viewer-243/</link>
		<comments>http://blog.coynetechsystems.com/software-updates/announcing-the-release-of-tailwin-log-file-viewer-243/#comments</comments>
		<pubDate>Tue, 25 May 2010 14:05:32 +0000</pubDate>
		<dc:creator>kevin</dc:creator>
				<category><![CDATA[Software Updates]]></category>
		<category><![CDATA[access log]]></category>
		<category><![CDATA[error log]]></category>
		<category><![CDATA[Log]]></category>
		<category><![CDATA[Log File]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[utilities]]></category>
		<category><![CDATA[Weblog]]></category>
		<category><![CDATA[website]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://www.coynetechsystems.com/blog/?p=243</guid>
		<description><![CDATA[We are pleased to announce the release of the TailWin log file viewer for Winodws&#8482;. TailWin log file viewer watches a text file in the Windows&#8482; file system and prints out the newly added lines of text in the file in the program&#8217;s main window in reverse order showing the most recent text lines last. [...]]]></description>
			<content:encoded><![CDATA[<p>We are pleased to announce the release of the TailWin log file viewer for Winodws&trade;. TailWin log file viewer watches a text file in the Windows&trade; file system and prints out the newly added lines of text in the file in the program&#8217;s main window in reverse order showing the most recent text lines last.<span id="more-243"></span></p>
<p>The main features of TailWin log file viewer are:</p>
<ul>
<li>Built for the Windows&trade; Operating System</li>
<li>Continuously monitors a text file for changes and displays the new lines in the file</li>
<li>Shows new text lines in reverse order to quickly see changes</li>
<li>Saves most recently used files for ease of opening</li>
<li>Ideally suited for log file viewing such as webserver error logs and webserver access logs</li>
</ul>
<p>More information on TailWin log file viewer can be found at the plug in website at <a href="http://www.coynetechsystems.com/tailwin/index.php">http://www.coynetechsystems.com/tailwin/index.php</a>.<br />
Coyne Technology Systems develops hardware, software, and embedded solutions and has over 15 years of experience in developing systems for the Personal Computer, internet and networked devices, handheld devices, and embedded systems. More information can be found on our website at <a href="http://www.coynetechsystems.com/index.php">http://www.coynetechsystems.com/index.php</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.coynetechsystems.com/software-updates/announcing-the-release-of-tailwin-log-file-viewer-243/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

