<?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>Tiger Technologies Blog &#187; Tales From the Support Team</title>
	<atom:link href="http://blog.tigertech.net/category/tales-from-the-support-team/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.tigertech.net</link>
	<description>Behind the scenes at tigertech.net</description>
	<lastBuildDate>Fri, 12 Mar 2010 08:08:52 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.6</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Use WP Super Cache for WordPress speed, not W3 Total Cache</title>
		<link>http://blog.tigertech.net/posts/use-wp-super-cache/</link>
		<comments>http://blog.tigertech.net/posts/use-wp-super-cache/#comments</comments>
		<pubDate>Tue, 02 Mar 2010 18:33:10 +0000</pubDate>
		<dc:creator>Robert Mathews</dc:creator>
				<category><![CDATA[Tales From the Support Team]]></category>
		<category><![CDATA[Tech Corner]]></category>
		<category><![CDATA[performance]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://blog.tigertech.net/?p=1068</guid>
		<description><![CDATA[We keep coming across WordPress customer sites that have hurt their performance by switching from the &#8220;WP Super Cache&#8221; plugin we recommend to a newer plugin named &#8220;W3 Total Cache&#8221;. Unfortunately, their site often ends up being far slower after switching to W3 Total Cache.
If you care about the performance of your site, please stick [...]]]></description>
			<content:encoded><![CDATA[<p>We keep coming across WordPress customer sites that have hurt their performance by switching from the &#8220;<a href="http://wordpress.org/extend/plugins/wp-super-cache/">WP Super Cache</a>&#8221; plugin <a href="http://support.tigertech.net/wordpress-performance">we recommend</a> to a newer plugin named &#8220;<a href="http://wordpress.org/extend/plugins/w3-total-cache/">W3 Total Cache</a>&#8221;. Unfortunately, their site often ends up being far slower after switching to W3 Total Cache.</p>
<p>If you care about the performance of your site, please stick with WP Super Cache unless you have a very good reason to switch. It works, and it works well.</p>
<p>Some people tell us that W3 Total Cache works just as well if it&#8217;s properly configured, and they may well be right &#8212; but it seems like it&#8217;s difficult to configure properly. Our experience is showing that it&#8217;s easy to get wrong, and performance ends up suffering. WP Super Cache makes it easy to get great performance.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.tigertech.net/posts/use-wp-super-cache/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>WP Super Cache and FeedBurner</title>
		<link>http://blog.tigertech.net/posts/wp-super-cache-and-feedburner/</link>
		<comments>http://blog.tigertech.net/posts/wp-super-cache-and-feedburner/#comments</comments>
		<pubDate>Fri, 29 Jan 2010 23:56:15 +0000</pubDate>
		<dc:creator>Ken</dc:creator>
				<category><![CDATA[Tales From the Support Team]]></category>
		<category><![CDATA[Useful Tips]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://blog.tigertech.net/?p=980</guid>
		<description><![CDATA[We&#8217;ve got a lot of customers running WordPress, and we definitely recommend running WP Super Cache to improve performance. It can help dramatically!
But recently we&#8217;ve seen a number of our customers getting hammered by a ton of requests from FeedBurner. Usually the request is of this form:
/somepost?utm_source=feedburner&#038;utm_medium=feed&#038;utm_campaign=SomeCampaignString
We&#8217;ve also seen FeedBurner going crazy and making thousands [...]]]></description>
			<content:encoded><![CDATA[<p>We&#8217;ve got a lot of customers running WordPress, and we definitely <a href="http://support.tigertech.net/wordpress-performance">recommend running WP Super Cache to improve performance</a>. It can help dramatically!</p>
<p>But recently we&#8217;ve seen a number of our customers getting hammered by a ton of requests from FeedBurner. Usually the request is of this form:</p>
<p>/somepost?utm_source=feedburner&#038;utm_medium=feed&#038;utm_campaign=SomeCampaignString</p>
<p>We&#8217;ve also seen FeedBurner going crazy and making thousands of duplicate requests. One of the sites we host has gotten 45,000 simple status requests (HTTP &#8220;HEAD&#8221; requests) from FeedBurner today, for no good reason that we can see.</p>
<p><span id="more-980"></span></p>
<p>Unfortunately, the default rules of WP Super Cache prevent it from caching any request with a query that contains an equal sign. So all of these requests are being unnecessarily run freshly each time, rather than being served from the cache.</p>
<p>There&#8217;s an easy fix to this. Open your Web site&#8217;s .htaccess file. Look for the section of lines for WP Super Cache, and find the line which tests <kbd>%{QUERY_STRING}</kbd>. Insert this new line of text immediately above the existing line:</p>
<p><code>RewriteCond %{QUERY_STRING} ^utm_source=(feedburner|twitterfeed) [OR]</code></p>
<p>The new line (ending with <kbd>[OR]</kbd>) must come before the existing <kbd>%{QUERY_STRING}</kbd> line. After inserting, the two lines should look exactly like this:</p>
<p><code>RewriteCond %{QUERY_STRING} ^utm_source=(feedburner|twitterfeed) [OR]<br />
RewriteCond %{QUERY_STRING} !.*=.*</code></p>
<p>There are two very similar blocks right next to each other in the .htaccess file. Be sure to add the new line to the same place in each block.</p>
<p>That&#8217;s the only change you&#8217;ll have to make! WP Super Cache will now be able to cache requests for normal pages that come from FeedBurner or Twitterfeed. If your Web site was being abused by FeedBurner (or Twitterfeed), you should see a definite improvement.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.tigertech.net/posts/wp-super-cache-and-feedburner/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Registrars continue to violate the ICANN transfer policy</title>
		<link>http://blog.tigertech.net/posts/transfer-policy-violations/</link>
		<comments>http://blog.tigertech.net/posts/transfer-policy-violations/#comments</comments>
		<pubDate>Wed, 22 Jul 2009 17:15:04 +0000</pubDate>
		<dc:creator>Robert Mathews</dc:creator>
				<category><![CDATA[Industry Observations]]></category>
		<category><![CDATA[Tales From the Support Team]]></category>
		<category><![CDATA[domains]]></category>
		<category><![CDATA[icann]]></category>
		<category><![CDATA[policy]]></category>
		<category><![CDATA[registrars]]></category>
		<category><![CDATA[transfers]]></category>

		<guid isPermaLink="false">http://blog.tigertech.net/?p=545</guid>
		<description><![CDATA[One of the most frustrating things we deal with is helping customers transfer domain names from other &#8220;registrars&#8221; (domain name companies) to us. To do this, we ask the old company to release the domain name, and they then have five business days to either release it or reject the transfer.
There&#8217;s an obvious potential conflict-of-interest [...]]]></description>
			<content:encoded><![CDATA[<p>One of the most frustrating things we deal with is helping customers transfer domain names from other &#8220;registrars&#8221; (domain name companies) to us. To do this, we ask the old company to release the domain name, and they then have five business days to either release it or reject the transfer.</p>
<p>There&#8217;s an obvious potential conflict-of-interest here. An unscrupulous company could easily make more money by rejecting the transfer and forcing the domain name owner to renew it there instead.</p>
<p><span id="more-545"></span></p>
<p>Fortunately, this shouldn&#8217;t be a problem. ICANN, the organization that controls domain name policy, requires registrars to follow some very specific rules about transfers (<a href="http://www.icann.org/en/transfers/policy-12jul04.htm">here</a>, with an update <a href="http://www.icann.org/en/announcements/advisory-03apr08.htm">here</a>). They list nine specific situations in which a transfer can be rejected, explicitly banning other reasons.</p>
<p>For the most part, this prevents arbitrary rejections. However, there are a few registrars that continue to violate the rules. We&#8217;ve complained (again and again) to ICANN about this, but they don&#8217;t seem interested, so I&#8217;ll mention a few problems here.</p>
<p>Register.com is one frustrating company. The ICANN policy clearly prohibits blocking a transfer of a domain name that has expired but not yet been deleted. Despite that, a customer trying to transfer a three-day-expired Register.com domain name told us last week that they flat out refused to give him the necessary code to allow him to transfer &#8212; unless he pays them to renew it first. That isn&#8217;t the first time we&#8217;ve heard this, either.</p>
<p>GoDaddy (and their reseller arm, Wild West Domains) have a different problem. They still block transfers for 60 days after a registrant contact update, even after the ICANN update <a href="http://www.icann.org/en/announcements/advisory-03apr08.htm">specifically prohibited doing so</a>. They freely admit it, too. GoDaddy&#8217;s Disputes Manager recently told us that blocking transfers for this reason is okay because &#8220;It is not necessary to update registrant information in order to transfer a domain name&#8221;. That&#8217;s irrelevant, of course; domain name owners are legally required to update registrant information whenever it becomes inaccurate, as ICANN&#8217;s update makes clear. GoDaddy can&#8217;t legitimately block transfers just because someone followed the legal requirement to update their contact information.</p>
<p>We see a similar problem with many transfers from Network Solutions. They often tell their customers that they&#8217;ve rejected the transfer &#8220;due to potentially suspicious activity in your account&#8221;. When customers ask for details, they&#8217;re told that the only &#8220;suspicious activity&#8221; was a recent contact update. Again, this is exactly what the policy prohibits.</p>
<p>GoDaddy and Network Solutions claim they&#8217;re protecting registrants by implementing these security measures, as if a recent contact update is a reliable sign of malicious activity. But many registrants update all their contact information just before they transfer their domain name to make sure the transfer approval notices reach their current address. They just don&#8217;t think about until then. It&#8217;s perfectly normal.</p>
<p>In addition, the &#8220;security measures&#8221; probably don&#8217;t work anyway. Surely by now any competent domain name thief knows not to update the registrant contact until after they&#8217;ve  transferred the domain name to another registrar, thus bypassing the &#8220;security&#8221; completely.</p>
<p>While the GoDaddy and NSI efforts almost certainly <strong>have</strong> blocked some fraudulent transfers, so would a rule saying &#8220;you can&#8217;t transfer domain names during months that contain an R&#8221;. What really matters is how many <strong>legitimate</strong> transfers are also blocked. We&#8217;ve been on the receiving end of many blocked transfers, and we always try to push the other registrar to provide details about the &#8220;security problem&#8221; &#8212; I&#8217;ve spent literally days of my time doing this over the last two years. In every single case, the attempted transfer has turned out to be legitimate.</p>
<p>If GoDaddy and NSI wanted to prove they were protecting registrants, they could share some statistics about how many of the blocked transfers eventually get completed later anyway, vs. how many of the blocked transfers result in complaints or actions by registrants to block future transfers (such as authorization code changes) . We&#8217;re pretty sure the former vastly outweighs the latter.</p>
<p>Of course, they won&#8217;t share those statistics, because that would reveal how many domain name owners they&#8217;re inconveniencing. Instead, they&#8217;ll just continue to flout the ICANN transfer rules, and ICANN will continue to do nothing.</p>
<p>Here&#8217;s our pledge to our customers: We&#8217;ll <strong>always</strong> abide by the letter and spirit of the ICANN transfer policies. If you want to transfer your Tiger Technologies domain name elsewhere, we&#8217;ll help you, not hinder you. In fact, we&#8217;re one of the few companies that <a href="http://support.tigertech.net/domain-transfer-away">publicly explains how to do it</a>. We value your business, but we&#8217;ll never force you to stay with us against your will.</p>
<p>(And by the way, we&#8217;re not ignoring security, either. Every domain name transfer gets reviewed by a real person here, and if we see anything unusual, we&#8217;ll send you an e-mail message and/or give you a call to find out what&#8217;s really going on.)</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.tigertech.net/posts/transfer-policy-violations/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>FTP virus spreading in new ways</title>
		<link>http://blog.tigertech.net/posts/ftp-virus-spreading/</link>
		<comments>http://blog.tigertech.net/posts/ftp-virus-spreading/#comments</comments>
		<pubDate>Tue, 19 May 2009 21:38:29 +0000</pubDate>
		<dc:creator>Ken</dc:creator>
				<category><![CDATA[Blog Highlights]]></category>
		<category><![CDATA[Tales From the Support Team]]></category>
		<category><![CDATA[Tech Corner]]></category>
		<category><![CDATA[ftp]]></category>
		<category><![CDATA[Gumblar]]></category>
		<category><![CDATA[security]]></category>

		<guid isPermaLink="false">http://blog.tigertech.net/?p=612</guid>
		<description><![CDATA[An earlier blog post described how several of our customers got their personal computers infected by a new virus that has been spreading across the Internet. Initial versions of the virus spread themselves by reading a Web site&#8217;s FTP username and password stored on the PC, then downloading Web pages, inserting an &#8220;iframe&#8221; tag, and [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://blog.tigertech.net/posts/ftp-password-viruses/">An earlier blog post</a> described how several of our customers got their personal computers infected by a new virus that has been spreading across the Internet. Initial versions of the virus spread themselves by reading a Web site&#8217;s FTP username and password stored on the PC, then downloading Web pages, inserting an &#8220;iframe&#8221; tag, and re-uploading the Web pages back to the server. As a proactive measure, we started scanning all uploaded files and stripping out any malicious &#8220;iframe&#8221; tags.</p>
<p>We are now seeing newer versions (commonly called &#8220;Gumblar&#8221;) which spread by inserting &#8220;script&#8221; tags with encoded JavaScript code. Because there are several variations of this approach, and because some legitimate commercial scripts use the same technique to hide their source code, we cannot perfectly identify and strip out these infections. Therefore, we will <em>not</em> automatically strip out the &#8220;script&#8221; tags from any upload file that looks suspicious.</p>
<p><span id="more-612"></span></p>
<p>If your Web site is infected, your best solution is to:</p>
<ol>
<li>Scan your computer for malware. See <a href="http://blog.tigertech.net/posts/ftp-password-viruses/">our prior blog post</a> for links to suggested scanning software.</li>
<li><a href="http://support.tigertech.net/change-password">Change your account password</a> in our control panel (since your account password is also your FTP password).</li>
<li><a href="http://support.tigertech.net/ftp-password">Change the passwords for any additional FTP accounts</a> you may have defined.</li>
<li>Re-upload (or &#8220;re-publish&#8221;) your Web site to our servers.</li>
</ol>
<p>Of course, we always recommend that users run anti-virus software on their systems, and keep backups of their Web site files and data.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.tigertech.net/posts/ftp-virus-spreading/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Protection against viruses that steal FTP passwords</title>
		<link>http://blog.tigertech.net/posts/ftp-password-viruses/</link>
		<comments>http://blog.tigertech.net/posts/ftp-password-viruses/#comments</comments>
		<pubDate>Fri, 17 Apr 2009 22:56:10 +0000</pubDate>
		<dc:creator>Robert Mathews</dc:creator>
				<category><![CDATA[Blog Highlights]]></category>
		<category><![CDATA[Tales From the Support Team]]></category>
		<category><![CDATA[Tech Corner]]></category>
		<category><![CDATA[ftp]]></category>
		<category><![CDATA[Gumblar]]></category>
		<category><![CDATA[security]]></category>

		<guid isPermaLink="false">http://blog.tigertech.net/?p=562</guid>
		<description><![CDATA[Recently, several customers have told us that pages on their Web sites have been modified without their knowledge. Upon investigation, the customers found their computers had been infected with a virus that steals saved FTP passwords, such as the &#8220;Gumblar&#8221; or Trojan.PWS.Tupai.A virus.
We&#8217;ve taken a step to protect you against this problem (described below), but [...]]]></description>
			<content:encoded><![CDATA[<p>Recently, several customers have told us that pages on their Web sites have been modified without their knowledge. Upon investigation, the customers found their computers had been infected with a virus that steals saved FTP passwords, such as the &#8220;Gumblar&#8221; or <a href="http://www.bitdefender.com/VIRUS-1000383-en--Trojan.PWS.Tupai.A.html">Trojan.PWS.Tupai.A virus</a>.</p>
<p>We&#8217;ve taken a step to protect you against this problem (described below), but it&#8217;s wise to protect yourself, too.</p>
<p><span id="more-562"></span></p>
<p>The way these viruses work is:</p>
<ul>
<li>You visit an infected Web page (on someone else&#8217;s site, not your own site) that loads a virus onto your personal computer.</li>
<li>The virus examines your computer to see if you use any common FTP programs, and whether you&#8217;ve told those programs to save your username and password.</li>
<li>It sends the usernames and passwords to a server controlled by &#8220;hackers&#8221;.</li>
<li>The hackers make an automated FTP connection to our servers and download any HTML or PHP files they find.</li>
<li>They modify those files to add HTML code (an &#8220;iframe&#8221; tag) that spreads the virus, then upload the changed files back to our servers.</li>
<li>Your site starts spreading the virus to new victims.</li>
<li>Within a few days, your site will be marked as &#8220;This site may harm your computer&#8221; on Google, causing the number of visitors to drop dramatically.</li>
</ul>
<p>Obviously, you don&#8217;t want this to happen to you. It&#8217;s bad enough to be infected with a virus, but it&#8217;s even worse for your Web site to get a reputation as &#8220;harmful&#8221;.</p>
<p>The first thing to do is protect your computer against this kind of virus. Make sure that you&#8217;ve updated Windows and any Web browsers you use. Also make sure you&#8217;ve recently updated Adobe Reader or Adobe Acrobat (which allow your Web browser to display PDF files), since many Web viruses are spreading through an <a href="http://www.adobe.com/support/security/advisories/apsa09-01.html">Adobe security vulnerability discovered just two months ago</a>. (You can download the latest version of Adobe Reader from <a href="http://get.adobe.com/reader/">this page on the Adobe site</a>.)</p>
<p>It&#8217;s also a good idea to scan your computer for &#8220;malware&#8221; every so often. Some of these infections disable standard virus scanners, so checking with a different program is wise even if you think you&#8217;re protected. One product that can detect these kinds of viruses is <a href="http://www.malwarebytes.org/mbam.php">Malwarebytes</a>.</p>
<p>If you&#8217;re really concerned about this, you might also avoid saving your password in your FTP program. It&#8217;s a little less convenient to type it each time, but it prevents these viruses from getting your password.</p>
<p>We mentioned that we&#8217;re doing something to protect you, too. We&#8217;ve modified our FTP servers to scan uploaded HTML and PHP files and automatically remove malicious &#8220;iframe&#8221; tags. If your computer <strong>does</strong> get infected with this kind of virus, this can prevent your site from spreading it and being listed as &#8220;harmful&#8221; in Google. (We&#8217;ll notify you if the system alters one of your files.)</p>
<p>Our servers currently only look for a couple of common &#8220;iframe&#8221; exploits, and we certainly can&#8217;t guarantee that we&#8217;ll catch them all. But it&#8217;s a good start &#8212; we&#8217;ve already caught and prevented several Web site infections.</p>
<p><em>Update 2009-05-19:</em> The virus now also spreads via a &#8220;script&#8221; tag that we cannot filter out. Please see <a href="http://blog.tigertech.net/posts/ftp-virus-spreading/">our newer post</a> for more details.</p>
<p><em>Update 2009-10-01:</em> The virus is also spreading through certain versions of the Adobe Flash player. You can update your copy from <a href="http://get.adobe.com/flashplayer/">this page on the Adobe Web site</a>. (These mentioned programs are not meant to be a comprehensive list of all vulnerabilities &#8212; you should keep all of your software up to date.)</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.tigertech.net/posts/ftp-password-viruses/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Scheduled maintenance for software updates (completed)</title>
		<link>http://blog.tigertech.net/posts/software-updates-2008-08/</link>
		<comments>http://blog.tigertech.net/posts/software-updates-2008-08/#comments</comments>
		<pubDate>Fri, 15 Aug 2008 19:11:28 +0000</pubDate>
		<dc:creator>Robert Mathews</dc:creator>
				<category><![CDATA[Blog Highlights]]></category>
		<category><![CDATA[System Status]]></category>
		<category><![CDATA[Tales From the Support Team]]></category>
		<category><![CDATA[Tech Corner]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[all servers]]></category>
		<category><![CDATA[status]]></category>

		<guid isPermaLink="false">http://blog.tigertech.net/?p=134</guid>
		<description><![CDATA[Due to software updates on our servers, most Web hosting customers will experience about ten minutes of scheduled maintenance downtime between 11 PM and 1 AM Pacific time starting on one of the following nights, depending on which server your site is on:

Friday, August 22 (servers beginning with letter &#8220;l-z&#8221;)
Saturday, August 23 (servers beginning with [...]]]></description>
			<content:encoded><![CDATA[<p>Due to software updates on our servers, most Web hosting customers will experience about ten minutes of scheduled maintenance downtime between 11 PM and 1 AM Pacific time starting on one of the following nights, depending on <a href="/posts/which-server/">which server your site is on</a>:</p>
<ul>
<li>Friday, August 22 (servers beginning with letter &#8220;l-z&#8221;)</li>
<li>Saturday, August 23 (servers beginning with letter &#8220;a-k&#8221;)</li>
</ul>
<p>(The servers named &#8220;bender&#8221; and &#8220;lrrr&#8221; have already been upgraded, and those customers are not affected.)</p>
<p><span id="more-134"></span></p>
<p>If you&#8217;re interested in the details: Our servers use the <a href="http://www.debian.org/">Debian Linux</a> operating system, which is periodically updated with new versions (just like Windows or Mac OS X). Last year, Debian was updated to version 4.0 (called &#8220;etch&#8221;), and since then, we&#8217;ve been running a &#8220;mixed&#8221; system on our older servers. Many programs (such as MySQL, PHP 5, and any program that had a security vulnerability) have long since been upgraded to the newer &#8220;etch&#8221; versions, but some other programs still need to be updated.</p>
<p>What we&#8217;re now doing is finalizing the upgrade on all servers that aren&#8217;t already fully using &#8220;etch&#8221;. This will simplify our management of security updates and give customers access to newer versions of some programs.</p>
<p>Unfortunately, a side-effect of the upgrade is about 10 total minutes of downtime, divided into a four-minute outage while the server is restarted, and a couple of separate two-minute outages while other programs are updated. We always strive to avoid any downtime, but in this case, it&#8217;s unavoidable.</p>
<p>Incoming mail may be delayed for a few minutes during the maintenance, but as always, no mail will be lost: it will just be queued and delivered a few minutes later.</p>
<p>Please <a href="http://support.tigertech.net/contact">contact our support team</a> if you have any questions. We appreciate your business!</p>
<p><em>Update: all scheduled maintenance was completed normally, and there will be no additional interruptions to service.</em></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.tigertech.net/posts/software-updates-2008-08/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Webmail &#8220;Thread View&#8221; is now a preference</title>
		<link>http://blog.tigertech.net/posts/webmail-thread-view-is-now-a-preference/</link>
		<comments>http://blog.tigertech.net/posts/webmail-thread-view-is-now-a-preference/#comments</comments>
		<pubDate>Tue, 18 Mar 2008 20:00:23 +0000</pubDate>
		<dc:creator>Robert Mathews</dc:creator>
				<category><![CDATA[Tales From the Support Team]]></category>
		<category><![CDATA[Useful Tips]]></category>
		<category><![CDATA[webmail]]></category>

		<guid isPermaLink="false">http://blog.tigertech.net/posts/webmail-thread-view-is-now-a-preference/</guid>
		<description><![CDATA[One of the features of our new(ish) Webmail system is &#8220;thread view&#8221;. This groups similar messages together based on their &#8220;Subject&#8221; and other headers, which can occasionally be useful if you&#8217;re trying to see all the replies to a particular message and you want them grouped together.
However, thread view has a potential downside: it you [...]]]></description>
			<content:encoded><![CDATA[<p>One of the features of our new(ish) Webmail system is &#8220;thread view&#8221;. This groups similar messages together based on their &#8220;Subject&#8221; and other headers, which can occasionally be useful if you&#8217;re trying to see all the replies to a particular message and you want them grouped together.</p>
<p>However, thread view has a potential downside: it you have several active threads going with several messages each, new messages can sometimes appear on the second page of the incoming mail screens, instead of the first page.</p>
<p>That&#8217;s not a problem if you&#8217;re expecting it. However, since we introduced the new Webmail system, we&#8217;ve had several complaints from customers who accidentally clicked &#8220;Switch to Thread View&#8221; without realizing what it does, then thought some of their incoming mail was missing because they aren&#8217;t used to looking for new mail on other pages. Since thread view is &#8220;remembered&#8221; even after you logout and login again, this caused some people a great deal of heartache.</p>
<p>From our logs, we&#8217;ve found that very few people actually use thread view. Because it seems to cause frequent problems and few people use it, we&#8217;ve made it an optional feature instead of being always enabled.</p>
<p>If (like most people) you don&#8217;t use thread view, you don&#8217;t need to do anything. If do you want to use thread view, it&#8217;s still available: just click &#8220;Preferences&#8221;, then click &#8220;Display Preferences&#8221;, then change &#8220;Show &#8216;Thread View&#8217; Link&#8221; to &#8220;Yes&#8221;.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.tigertech.net/posts/webmail-thread-view-is-now-a-preference/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Oddities with the MySQL &#8220;Table upgrade required&#8221; message</title>
		<link>http://blog.tigertech.net/posts/mysql-table-upgrade-required/</link>
		<comments>http://blog.tigertech.net/posts/mysql-table-upgrade-required/#comments</comments>
		<pubDate>Fri, 07 Dec 2007 22:46:55 +0000</pubDate>
		<dc:creator>Robert Mathews</dc:creator>
				<category><![CDATA[Tales From the Support Team]]></category>
		<category><![CDATA[Tech Corner]]></category>
		<category><![CDATA[mysql]]></category>

		<guid isPermaLink="false">http://blog.tigertech.net/posts/mysql-table-upgrade-required/</guid>
		<description><![CDATA[Here&#8217;s an obscure thing we spent some time on today that doesn&#8217;t affect our customers, but might be useful to someone else searching the Internet. The problem was a MySQL database table that, as far as we can tell, worked perfectly&#8230; except that it shows this message when we run CHECK TABLE:
Table upgrade required. Please [...]]]></description>
			<content:encoded><![CDATA[<p>Here&#8217;s an obscure thing we spent some time on today that doesn&#8217;t affect our customers, but might be useful to someone else searching the Internet. The problem was a MySQL database table that, as far as we can tell, worked perfectly&#8230; except that it shows this message when we run <tt>CHECK TABLE</tt>:</p>
<p><code>Table upgrade required. Please do "REPAIR TABLE `users`" to fix it!</code></p>
<p><span id="more-92"></span></p>
<p>Hmm. Well, that error message seems odd, but what the heck. After making sure there&#8217;s a current backup, let&#8217;s give it a shot:</p>
<pre>
mysql&gt; REPAIR TABLE users;

+---------------------+--------+----------+-----------------------------+
| Table               | Op     | Msg_type | Msg_text                    |
+---------------------+--------+----------+-----------------------------+
| database.users      | repair | status   | Table is already up to date |
+---------------------+--------+----------+-----------------------------+</pre>
<p>And yet, <tt>CHECK TABLE</tt> still says there&#8217;s a problem:</p>
<pre>
mysql&gt; CHECK TABLE users;

+---------------------+-------+----------+-------------------------------------+
| Table               | Op    | Msg_type | Msg_text                            |
+---------------------+-------+----------+-------------------------------------+
| database.users      | check | error    | Table upgrade required. Please do   |
|                     |       |          |  "REPAIR TABLE `users`" to fix it!  |
+---------------------+-------+----------+-------------------------------------+</pre>
<p>Hmmm. We tried every reasonable combination of <tt>REPAIR TABLE</tt> and <tt>myisamchk</tt> options we could think of, but nothing helped. Then we tried unreasonable options, including the frightening <tt>REPAIR TABLE table USE_FRM</tt> option. In our experience <tt>USE_FRM</tt> usually ends up doing the same thing as <tt>DELETE FROM table</tt>, and this time was no exception. (And <strong>that&#8217;s</strong> why you make a backup first.)</p>
<p>Well, let&#8217;s take a look at the table status (with the uninteresting bits removed):</p>
<pre>
mysql&gt; show table status;

+-------+--------+---------+-----+---------------------+
| Name  | Engine | Version | ... | Create_time         |
+-------+--------+---------+-----+---------------------+
| good  | MyISAM |      10 | ... | 2007-06-08 09:44:01 |
| users | MyISAM |       7 | ... | 2005-03-15 12:03:11 |
+-------+--------+---------+-----+---------------------+</pre>
<p>Sure enough, the bad &#8220;users&#8221; table is a different version than a good table that doesn&#8217;t have this problem. And the bad table was created when we were still using MySQL 4.1.x. This table should have been changed when we upgraded to MySQL 5, and it should be possible to fix now. Why on earth won&#8217;t <tt>REPAIR TABLE</tt> fix it?</p>
<p>We puzzled over this for some time, and eventually just decided to reload it from a dump. But here&#8217;s the strange thing: it wouldn&#8217;t reload from the dump, either!</p>
<p><code>ERROR 1060 (42S21) at line 20: Duplicate column name 'user_id'</code></p>
<p>What the heck? So we looked closely at the dump file, and it somehow contains this line:</p>
<p><code>PRIMARY KEY  (user_id,user_id)</code></p>
<p>MySQL thinks this table has a composite (two-column) primary key, but on the same column twice, which doesn&#8217;t make any sense. So we fix the dump to look like this:</p>
<p><code>PRIMARY KEY  (user_id)</code></p>
<p>And everything works perfectly when the table is reloaded.</p>
<p>So if <tt>CHECK TABLE</tt> tells you a table upgrade is required, but <tt>REPAIR TABLE</tt> won&#8217;t fix it, check whether you can actually reload a dump of that table. You might find something unusual and easily fixable in the dump.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.tigertech.net/posts/mysql-table-upgrade-required/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Don&#8217;t rely on PHP file upload permissions</title>
		<link>http://blog.tigertech.net/posts/php-upload-permissions/</link>
		<comments>http://blog.tigertech.net/posts/php-upload-permissions/#comments</comments>
		<pubDate>Tue, 14 Aug 2007 04:47:06 +0000</pubDate>
		<dc:creator>Robert Mathews</dc:creator>
				<category><![CDATA[Tales From the Support Team]]></category>
		<category><![CDATA[Tech Corner]]></category>
		<category><![CDATA[all servers]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[security]]></category>

		<guid isPermaLink="false">http://blog.tigertech.net/posts/php-upload-permissions/</guid>
		<description><![CDATA[If you write your own PHP scripts that allow file uploads, we&#8217;ve discovered an unusual issue that might affect you. The &#8220;permissions&#8221; PHP gives to newly uploaded files aren&#8217;t always the same &#8212; and a recent change to our servers may have altered the permissions your script sees.

PHP gives programmers a way to accept an [...]]]></description>
			<content:encoded><![CDATA[<p>If you write your own PHP scripts that allow file uploads, we&#8217;ve discovered an unusual issue that might affect you. The &#8220;permissions&#8221; PHP gives to newly uploaded files aren&#8217;t always the same &#8212; and a recent change to our servers may have altered the permissions your script sees.</p>
<p><span id="more-75"></span></p>
<p>PHP gives programmers a way to accept an uploaded file, store it in a temporary directory, then move it to a specific location using the <a href="http://www.php.net/move_uploaded_file">move_uploaded_file()</a> command. That&#8217;s all good &#8212; but what <a href="http://en.wikipedia.org/wiki/File_system_permissions">file permissions</a> would you expect the resulting file to get? Most PHP documentation says that temporary files created by PHP will not be world-readable, so they&#8217;ll look like this:</p>
<p><code>0600 (-rw-------)</code></p>
<p>That&#8217;s good security. It makes sure the files can&#8217;t be accessed by Web site visitors, for example, unless the programmer takes additional steps to make that happen.</p>
<p>On many servers, mode 0600 is exactly what you get after using move_uploaded_file(). However, if the initial temporary directory used by PHP is on a different &#8220;file system&#8221; than the final destination, move_uploaded_file() makes a copy of the file instead of moving it. And when it makes a copy, it sets the permissions of the copy to something very different:</p>
<p><code>0644 (-rw-r--r--)</code></p>
<p>Yikes! And since you have no real control over whether there&#8217;s going to be more than one file system involved (it&#8217;s effectively random from the script author&#8217;s point of view), this means <strong>you have no idea whether an uploaded file is going to be world-readable</strong> after using move_uploaded_file(). If you want to make sure it is &#8212; or isn&#8217;t! &#8212; you have to set that yourself, using something like <a href="http://www.php.net/chmod">chmod</a>:</p>
<p><code>chmod ($filename, 0600);</code></p>
<p>Or:</p>
<p><code>chmod ($filename, 0644);</code></p>
<p>There probably aren&#8217;t many widely-used scripts that rely on the default permissions of uploaded files (otherwise the scripts would fail on some servers and work on others, and someone would notice and fix it). So this shouldn&#8217;t be a problem, right?</p>
<p>Well, until recently, most of our servers had their &#8220;temporary directory&#8221; on a different file system (it was actually a &#8220;tmpfs&#8221;). This caused a problem, though: sometimes when a server hadn&#8217;t been restarted for several months, the smaller temporary directory would start to fill up (the directories only get cleaned out when a server is restarted). This made us nervous: what if a temporary directory filled up and ran out of space? So we recently decided to stop putting the temporary directory on a separate file system, setting it to use the standard disk file system after the <a href="/posts/sched-maint-2007-08-11/">scheduled restart last Saturday night</a>. It shouldn&#8217;t really matter where it is, so we didn&#8217;t even bother mentioning it.</p>
<p>But this afternoon, a couple of customers contacted us to let us know their PHP file upload scripts had stopped working. Not being familiar with arcane details of how PHP handles uploaded temporary files, we were extremely puzzled&#8230; until a perusal of the PHP source code revealed the trouble.</p>
<p>Now, what we originally told the customers who had this trouble still stands: regardless of the cause, everyone&#8217;s scripts should explicitly set the mode of any uploaded files if it matters. That&#8217;s the only way to guarantee your script works properly on any server.</p>
<p>However, we value consistency a great deal. You should be able to rely on your scripts continuing to work if it&#8217;s possible for us to make that happen. So we&#8217;ve &#8220;patched&#8221; our versions of PHP (both PHP 4 and PHP 5) to always make move_uploaded_file() act as if the file was copied (giving mode 0644). This should &#8220;fix&#8221; any scripts that were broken by this change, even if you can&#8217;t actually fix the scripts for some reason.</p>
<p>I should mention that this &#8220;solution&#8221; is still too random for our taste. There&#8217;s no guarantee that this behavior is compatible with what you&#8217;d get if you tried another company&#8217;s PHP, for example. What would be better is for PHP itself to make sure the mode is always the same, and for that to be fully documented so PHP users could expect the same behavior on all servers. We&#8217;ve <a href="http://bugs.php.net/bug.php?id=42291">opened a PHP bug suggesting that</a>. If the PHP folks ever see fit to make that change, we&#8217;ll make sure our versions of PHP do what the PHP documentation says, even if it means making our servers start using mode 0600. So again: if the mode matters to your script, make sure your script sets the mode itself to avoid problems.</p>
<p><em>Followup: the PHP developers changed how PHP works in response to our bug report, forcing PHP to use mode 0644 for files created with move_uploaded_file().</em></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.tigertech.net/posts/php-upload-permissions/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>Automatically selecting the wrong wireless network can cause e-mail problems</title>
		<link>http://blog.tigertech.net/posts/automatically-selecting-the-wrong-wireless-network-can-cause-e-mail-problems/</link>
		<comments>http://blog.tigertech.net/posts/automatically-selecting-the-wrong-wireless-network-can-cause-e-mail-problems/#comments</comments>
		<pubDate>Thu, 03 May 2007 23:46:33 +0000</pubDate>
		<dc:creator>Ken</dc:creator>
				<category><![CDATA[Tales From the Support Team]]></category>
		<category><![CDATA[e-mail]]></category>

		<guid isPermaLink="false">http://blog.tigertech.net/posts/42/</guid>
		<description><![CDATA[We had an interesting support phone call today from a customer who was having trouble sending and receiving e-mail. She was using a wireless connection today. She had also been using a wireless connection yesterday, and it had been working fine then. Before calling us she had tried restarting her computer (as we recommend for [...]]]></description>
			<content:encoded><![CDATA[<p>We had an interesting support phone call today from a customer who was having trouble sending and receiving e-mail. She was using a wireless connection today. She had also been using a wireless connection yesterday, and it had been working fine then. Before calling us she had tried restarting her computer (as we recommend for most e-mail problems), but that didn&#8217;t seem to fix the problem.</p>
<p><span id="more-42"></span></p>
<p>After doing a bit of diagnostics, it turned out that the problem was that her computer had selected a neighbor&#8217;s wireless network after she rebooted. This different network blocked the necessary e-mail ports, so she couldn&#8217;t do e-mail. None of this was obvious until we started examining her IP address. She solved the problem by plugging her computer into a wired Ethernet port on her router, rather than using the wireless connection. When she did this, she got a new IP address which belonged to a completely different network, and suddenly she could do e-mail again!</p>
<p>So if you are having intermittent wireless network problems, be sure to check which wireless network your computer is connecting to. Choosing the wrong network can cause problems for e-mail and (potentially) for other services too.</p>
<p>We offer <a href="http://support.tigertech.net/ip">a web page which displays your IP address and host name</a>. The final part of your host name is the network which are you using to connect to the Internet. For example, if your host name is <strong>c-71-205-218-196.hsd1.ca.comcast.net</strong>, then you are connecting to the Internet via Comcast.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.tigertech.net/posts/automatically-selecting-the-wrong-wireless-network-can-cause-e-mail-problems/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
