Category Archives: Systems Administration

Content Synchronization Using Rsync

So months ago we were discussing ways of synchronizing files between two servers (for instance the images on a content staging and multiple production servers). My boss kinda put together a list of links for rsync, an open source utility used mainly for quickly transferring files. That email sat in my inbox for the last couple months and only until today did I start trying to get rsync to work. There aren’t any Windows binaries available on the site, which wasn’t a big deal because they gave directions for compiling it here. In order to compile, you need cgywin, so I downloaded and installed that, but the download/install I did for some reason didn’t include make which is required in order to compile rsync. So I went back and re-installed cygwin, this time exploding the options looking for make, only to find that cgywin includes rsync as an option! No need to compile for Windows, just download cygwin and specify that you want the rsync package installed!

I haven’t gotten there yet, but I plan to get rsync running as a service under Windows 2000 on a couple boxes (following these directions). You can find further directions and examples here. I’ll update later on how it works syncing up a couple websites.

Trailing slash in IIS

If you’re managing a site on IIS, please use a trailing slash when specifying the home directory in IIS Manager. I must have spent an hour tracking down an apparent bug that turned out to be nothing more than a home directory that looked like this:

d:\inetpub\thehost.com\wwwroot

rather than

d:\inetpub\thehost.com\wwwroot\

Don’t know that it actually matters all that much, but if you’re using the server.transfer() or server.execute() methods of the server object in ASP, you’ll get errors.

New MySQL Control Center

If you use MySQL, then checkout the new MySQL Control Center @ mysql.com. For the most part, you get the same functionality as MySQL Front (which apparently has been discontinued, bummer, you can still get MySQL Front here), although MySQL CC lacks the ability to export databases/tables from one server to another (or to a text file) like MySQL Front gave you… Does have some nice server admin tools (ie: ability to kill a specific process within the MySQL Server). (thanks Joe!)

Verity Spider tips & tricks

Thanks to Phil for sending me a link to the Verity Spider tips & tricks on daemon.com.au. Daemon is/was a big Spectra shop and probably used the spider to search Spectra sites on a regular basis. So why doesn’t that page show up in a google search for “verity spider” or “verity spider tips“? Maybe it’s because of the way their content management system works, where each page is denoted by a CF UUID appended to the URL. This method probably helps the developers, but in the long run, isn’t so good for getting ranked or even indexed by the larger search engines… which led me to todays’ research: mod_rewrite. I got my MCSE from Microsoft back a couple years ago, so my first exposure to web servers was IIS. IIS was then and for the most part, is now very pointy clicky (although I’ve heard that .NET IIS will have a text-based configuration file). Anyway, Apache wasn’t something I played with much until the last year, when I brought up a couple linux machines and thus Apache. So today I dove headfirst into mod_rewrite and came up a solution for making the next version (due out anyday now) of karensrecipes.com more search engine friendly. In short, to get to a recipe on the development site right now, you’d type in something like this:

http://www.karensrecipes.com/recipes/detail.jsp?r=18

Again, just like the link I mentioned above, this is not an example of how to impress the search engines. Some kung foo regular expressions and a dab of JKMount knowledge and we now get something like this:

http://www.karensrecipes.com/recipes/18/Steamed_Mussels.jsp

and in your Apache httpd.conf:

RewriteEngine on
RewriteRule ^/recipes/([0-9]+)/.*$ /recipes/detail.jsp?r=$1 [PT]

which in English says something like “if the request starts with ‘/recipe/’ and then is followed by any number of digits and then is followed by a ‘/’ and any number of other characters, then rewrite the URL to this… (wanna know more about regular expressions? get this fabulous book!)

Pretty snazzy eh? It gives me warm feelings inside because my JSP/Servlet code doesn’t have any knowledge that funny stuff is being done to the URL in Apache, which means you can do all sorts of chicanery to your URL without having to change a lick of server side code.

November 2002 Netcraft survey

From the November 2002 Netcraft survey, check out the comparison between the numbers of IP’s found on the large ISP’s compared to the smaller guys:

Number of IP Addresses hosting Websites
Hoster Dec 01 Nov 02 Change
cw.net 11,980 9,653 -19.4%
exodus.net 10,797 8,605 -20.3%
gblx.net 6,681 4,767 -28.6%
above.net 5,838 4,133 -29.2%
level3.net 8,980 5,449 -39.3%
digex.com 9,883 2,374 -76.0%
psi.net 5,244 1,272 -75.7%

Number of IP Addresses hosting Websites
Hoster Dec 01 Nov 02 Change
rackshack.net 5,152 13,459 +161.2%
crystaltech.com 6,874 11,170 +62.5%
dialtoneinternet.net 22,441 31,351 +39.7%
ratiokontakt.de 6,444 8,375 +30.0%
he.net 9,659 12,493 +29.3%
datapipe.net 13,603 17,340 +27.5%
rackspace.com 8,776 11,160 +27.2%

Looks like smaller *is* better.

Get a SSL cert for $119

From the Netcraft newsletter:

“Most of the Certificate Authorities now understand that the market is a naturally price sensitive one, with a large number of sites simply going with the cheapest certificate on the premise that they all approximately do the same thing.

Over the last three years [1]Geotrust have, primarily through competitive pricing, garnered 10% of the market, and have become the role model competitor to Verisign in the way that Thawte had been before Verisign bought it.”

Get a SSL cert for $119 or check out these other low cost alternatives:

http://www.comodo.net/
http://www.entrust.com/
http://www.globalsign.com/