Inspired by another blog post, I'd like to share the steps, I am usually following when taking over responsibility for a website of a new client. Usually clients contact me due to issues with the site - either runtime issues, performance issues, upgrade/feature requirements or even site being hacked.
Usually I start browsing the site and noting my impression: how fast does it load, does the home page look up to date and is content structure easy to get. This usually provides me with a basic idea, how the site interacts with visitors.
Viewing page source provides me usually with a basic idea about the quality of the Skin being used.
Next I log in with host account and check host settings for DNN version, i.e. need for updates, and performance settings.
I usually check out Host > Extensions for all installed extensions (including version) and which are in use - some sites provide a huge option for improvement here, as unused extensions increase compile time and bear unnecessary risk of security issues.
I check out site settings for usability settings.
I check all modules on home page and major page for using caching.
I usually ask for access to the Database using Sql Server Management Studio or at least a hosting tool.
Within SSMS, I check database file size (right click database node and choose properties) and compatibility level (should be max. value supported). I run Report for "Space used by top most tables" to identify tables with issues: Eventlog and ScheduleHistory should not contain more than a few hundred items, Search tables might be erased in DNN 7.2.0 and above, as they are no longer in use. An unexpected large size of userprofile table might hint to site abuse by a registration bot.
If I get RDP acces, I am checking next IIS website settings and settings of the application pool - for performance, caching and compression, Recycling and identy (security principle being used by ASP.Net). Also, I am checking permissions for the website Folder, to prevent unauthorized access.
Last, but not least, I make sure, that the OS is fully patched and, if necessary, Review Settings of other relevant Software, like FTP Server.
Before making any changes, I am checking backup strategy and files to make sure, it is restorable.
Before I start making any changes, I discuss with the client his major issues and observations. I suggest strategies to provide solutions and keep the website up to date - this is the part, where experience is needed - to create a solution, which best fits the client's needs and guarantees his satisfaction.