Before downloading and installing Roadkill, make sure you have the following requirements installed/enabled:
- Some basic technical knowledge of Windows
- ASP.NET MVC 3 (from http://www.asp.net/downloads)
- IIS 7+ (although it will work with IIS Express and Cassini)
- 64bit Windows for SQLite (see the note below for 32 bit)
You do not need a database server - you can use SQLite if you choose. SQL Server Compact is also supported, however a bug in NHibernate 3.2 means the current (1.3) version of Roadkill will not operate correctly.
Download the current version which is a ZIP file, and unzip it to a new folder. If you are planning to use Roadkill on your development machine or remote access to another machine, you will need to create an IIS site before installing - Roadkill does not do this for you in the wizard
. There is a howto on this Microsoft page: http://support.microsoft.com/kb/323972.
Once that step is complete, copy/FTP the unzipped Roadkill files to your website root folder. Now open your site in your browser, for example: http://localhost/roadkill/
Roadkill has been designed to work from any virtual path, provided the path is configured as an application.
The installation wizard will then guide you through the installation step by step, and write your web.config settings at the end of the wizard. You can manually tweak your web.config settings if you prefer, guidance on the Roadkill settings can be found on the web.config
If your installation fails at any point, simply change the "installed=true" in the roadkill section of your web.config to "installed=false" to reset the installation.
Using SQLite on Windows 32 bit
From Roadkill 1.4 onwards, the correct SQLite version is now copied to your /bin folder for you (64 bit or 32 bit binaries). This is done at the beginning of each installation, if you choose to switch to 32/64 bit mode for your website, you will need to copy the correct binary files (two .dll files), which can be found in the App_Data\SQLiteBinaries folder.
Web.config can't be written to
This is probably the commonest problem with the installer. If you hosting Roadkill on shared hosting, your control panel should be able to change these permissions to the web.config. However the application pool that Roadkill is running as should
have enough permissions to write to the web.config.
If you are running Roadkill on your home/development machine then the simplest solution to the problem is to run the application pool as LOCALSYSTEM or LOCALSERVICE.
NHibernate exceptions at Finished stage
These are almost always caused by your connection string login details or a missing dependency (if you're using something other than SQL Server or SQLite). The stack trace you will see on the Finished page will give you full information of the problem, if you scroll down. You can also look at the event log if you have access to it.