Clint Patterson's Blog


Read the thoughts and musings of a cultured redneck here

Why you shouldn?t host a DotNetNuke site in a sub-folder
Specify Alternate Text
Skin folder structureI first encountered DotNetNuke incidentally.  The Admissions office at the University where I was employed was using an outside vendor for an admissions application and the application ran off DotNetNuke.  I had heard the term ?DotNetNuke? before, but didn?t have any experience with it.  It didn?t take long before the Admissions team asked us to add their logo into the background.  I was caught in the situation that many web/IT people find themselves...that?s the ?Hey you mess with computers so come do this? situation where you have no clue and have to learn something new to complete a task.
All the Admissions team wanted was their logo in the background of the site.  I started using the Firebug plug-in to look at the styles of the site and eventually I traced down the background image and over wrote the file with an updated image.  This was my first look into the folder structure of DotNetNuke.  Now days I can zip through those folder paths much more quickly, but back then it was a major headache.
This ?DotNetNuke? thing kind of intrigued me a little, especially since I could change the background!  I figured I would try to play around with it on the side and figure out what it was all about.  After all, another request from Admissions ?Can you do this too? was inevitably in my future.  I went over to GoDaddy and set up a hosting account with the sole purpose of running a DotNetNuke site on it.  I just wanted to learn about the framework and GoDaddy offered it as a 3rd party extension.  Within a couple of days I had a test site up and running and started my path of learning DotNetNuke.
GoDaddy installed the 3rd party extension of DotNetNuke in a sub-folder.  At the time it didn?t matter to me, but later down the road I would come to learn that this wasn?t a good thing.  I continued tinkering around with DotNetNuke on the side for a while and got a little better handle on it. I even started a new site running DotNetNuke on a different hosting install on GoDaddy.  I was making my way along until one day I installed a bad module?a really bad module.  Upon installation of this module my site crashed.  This was back in the DNN 4.9 days I believe.  I didn?t have a ton of background in DNN and I wasn?t a strong developer so fixing this was not going to be easy.  I got in touch with GoDaddy?s support and they responded ?We don?t support 3rd party applications.?  I was dead in the water.  
After hours of Googling I was able to find out how to remove this bad module via FTP.  I removed it and the site instantly came back up. Looking back the situation I didn?t really like the fact that my host couldn?t support the application that was running my sites.  I researched more and found other hosts that support DotNetNuke.  It became obvious to me that PowerDNN was the top dog in the DNN hosting world?and yes, they actually can help when things go wrong.  
PowerDNNShortly thereafter I moved my site over to PowerDNN.  When I moved the site the tech-support guy at PowerDNN recognized my site being in a sub-folder as an indicator that I was coming from GoDaddy.  He asked me if I wanted to leave my site in the sub-folder and he also recommended to me that this was not a good practice. Though, I told him to go ahead and leave it in the sub-folder because I had some good search engine results going by that time and I didn?t want to mess up / break any links I had showing up for my site.  He advised me again that this wasn?t the best configuration for the installation, but he did what I asked and left it in the sub-folder.  Yes, I should have listened to him!
After moving my site to PowerDNN I noticed that my site was loading way faster and that was (and is) awesome! They obviously knew something about DNN.  Everything was going good.  Time went by and then I learned about how DotNetNuke is multiportal and how you can run more than one site off a single DNN installation. It was almost too good to be true I thought.  I followed the directions and tried to create a new parent portal to run my 2nd site.  Fail!  I kept getting errors and I tried a couple of different times to make sure I was following the directions properly.  Finally I broke down and emailed in to PowerDNN.  That?s when I was informed that my site needed to be located at the root in order for the multi-portal feature to work correctly with the way I was setting up redirects and configuring my site.  Now, you may be an IIS guru or know a lot about domains and can make it work from within a sub-folder, but for the ?Regular Joe? like me I can?t make it happen.  
I had to bite the bullet ? I had to move the site to the root.  It?s not that I minded it being at the root, I just didn?t want to change the path that the links in search results had and I didn?t want to break every image/hyperlink that was on my site by altering the path.  Though, in order for my site to properly run more than one portal a move was necessary.  
I went ahead with my fingers crossed and requested that the PowerDNN guys move my site out of the sub-folder into the root.  I was impressed with how they informed me of what would occur if I did this.  They told me all the non-relative links would break and they let me know how long it would take them to get everything moved.  It didn't take long at all and my site was up and running in the root within the hour. They were accurate with both predictions of timing and the non-relative links being broken!  
  Broken Image
  I had to fix hundreds of these!
Moving the site did mess up my search results, but it only messed them up for a couple of days.  Google had crawled and re-indexed my site within 3 days and the new path was now showing up in the search results.  Also, the new site I was hoping to run off the same DNN instance was working the way it was supposed to?go figure!  Along with having users emailing in saying that "The site was down" (because they had the page stored in their cache with the old address), I did have to spend a whole week going back through the skin files, pages, and blog entries cleaning up all the now-broken links that I had just created for myself.  I also had to email frustrated users back telling them how to delete their cookies/temp files and to refresh their browsers. It was not fun at all, but sometimes learning comes with pain and the pain is what helps the lesson you learn stick with you for a while!
When the PowerDNN tech-support guy saw my DNN site coming from a sub-folder he knew it was an artifact of hosting a site at GoDaddy.  In retrospect I really wish I had listened to him when he advised me to not put the site in a sub-folder. I can?t praise PowerDNN?s team enough for the communications, knowledge, and support they gave me through the whole process of me learning a lesson!
  1. Don?t host a DNN site at GoDaddy
  2. Don?t host a DNN site in a sub-folder
  3. PowerDNN rocks!
Lesson learned. Don?t let it happen to you too!


Clint Patterson

I also blog on other sites...

And contribute to OSS Documentation...

See my pics on UnSplash