For several years, I try to do something ‘geeky’ during the holidays. This year I wanted to update the theme (and a few other things) on www.iislogs.com. It took a couple months off / on working through tweaks. I was able to get the new site implemented between Christmas and New Years. Thanks to God and Steve Smith (www.aspalliance.com fame) for publishing Aspalliance SimpleCMS I’ve wanted for several years to have a website that controls the layout in a single file and database driven. SimpleCMS uses a HTTP module architecture where all content is stored in a database, the HTTP module retrieves the webpage from a database. Besides the CSS file, MasterPage, web.config and some programming files in ‘/bin’ folder. There are no other required files on disk.
If I want to update content, there is a simple web-based interface using FreeTextBox. You may ask, why didn’t I use Community Server, Dotnetnuke or Graffiti CMS? They are all great packages I’ve used in separate websites. For my needs, SimpleCMS makes it easy to implement and maintain. I didn’t need a RSS feed, post comments on articles for example. Probably the main reason was having my own theme. I probably could skin them real easy, but a master file was easy to adjust.
Here are a few lessons learned when I was implementing the updated www.iislogs.com site.
1) Have a backup of the original site
2) Test on a local box before publishing to production
3) Add 404 / 500 error trapping to catch later obvious errors
4) Turn on error coding <customErrors> or whatever you use to log errors.
5) If you are using a urlrewrite module, urlscan make sure the module is installed on your dev / test systems.
6) Verify if your host supports remote delegation in IIS 7 with IIS manager
7) Don’t have absolute image links to external images. Causes suspious activity in IE
Regarding point #7, we use PayPal to process orders. On our purchase page, there were several links to external images hosted by PayPal. When I would browse the page, the following error would be displayed.
To correct the issue, I copied the images local and update the links so they were relative. I didn’t want someone to suspect an issue with our site, including our purchase webpage. I didn’t get this error in FireFox 3.0. The error was isolated to IE 7, I didn’t test in IE 6.
Some additional information about my implementation.
1) The site is hosted by ORCS Web using Windows Server 2008 / IIS 7.0
2) IISLogs application pool uses Integrated mode, the new application pool introduced in IIS 7.0
3) I added an additional folder called AdminMySite, disabled Anonymous Authentication module and updated the web.config so the SimpleCMS administration section was secure. I also needed to update the web.config to support AdminMySite folder.
4) Here is an article I published on getting SimpleCMS published on IIS 7
I’ve not had a chance to do a website change since running ASPFree.com, it was nice to implement things like Master Pages, HTTP modules using Integrated pipeline. This architecture allows me to expand in the future. The real goal of IISLogs is to market the component I wrote in 2004 (currently on version 2.0). It’s always fun to share some tips / tricks learned. I looked at using the MVC framework. It seemed a little too much for my requirements. I’ve always tried to use the latest technology so I could keep up-to-date.
I hope you find this article useful. And remember, if you are tired of messing with log files, misc files left over from 3rd party applications, you can use IISLogs to help manage the files. 🙂
Microsoft MVP – IIS