As a relative newbie to SQL and ASP, I lost many hours, despite doing clean installs newly inslled, fully patched, 2003 server.
Some things I have found that I am sure are known, but may be helpful to other newbies:
- Unzipping the distribution on a network drive may cause XP / 2003 server to mark all files as blocked (see the file properties for the files). The installation runs but with strange effects, like formatting and icons not working properly. I think this was the case when the simple install worked, but not the custom install. Unpacking the download zip on the local drive solved this.
- SQL Express edition only handles a single connection. So if you open the database with either Visual Studio or SQL Management Studio or other SQL management tool, then the database is locked and ASP can not access it. With Visual Studio, you have to explicitly detach the database. Just shutting down Visual Studio may not be enough.
- Data base connection errors are not handled with very explicit suggestions by the DNN install scripts. I ended up using SQL authentcation, because I could not figure out how Windows Authentication connection strings and accounts should look like.
This worked for me:
- Open SQL Management Studio or similar and connect to the SQL sever
- Open the SQL sever properties, go to the Security settings, set authentication to "SQL and Windows Authentication".
- Go to the Security tab => Logins and create a new login (in this case named webSQL) and assign a password.
- Create the database (in this example "myweb_DB")
- Open the database, go to Security => Users for the database (NOT for the whole SQL server, but for the newly created database).
- Add a User Name (can also be "webSQL"), select the login ("webSQL"), and check db_owner under both Role Members and Owned Schemas
- Close the database connection if you are using SQL Express (or the DB will be locked!)
- In the web.config file, edit the two connection strings. In my case they look something like this: <add name="SiteSqlServer" connectionString="Data Source=(local);Initial Catalog=myweb_DB;User ID=webSQL;Password=xaxhp24P" providerName="System.Data.SqlClient" />
- And the second connection string: <add key="SiteSqlServer" value="Data Source=(local);Initial Catalog=myweb_DB;User ID=webSQL;Password=xaxhp24P" />
- IMO, If things fail during install, do not try to fix the installation, but restart with clean DNN distribution files in the virtual directory, and a clean database. Be aware that the install alters files, not just the database.
- On my 2003/64 server ASP.NET 2.0.50727 was not properly registered, despite a clean install. If you get a "File not found / 404", then test with a simple "Hello World" html page. If this works, but not an .aspx file, then the ASP.NET may not be properly registerd/installed. If so, register it manually or reinstall asp.net. You can also simply confirm that ASP.NET is there, by checking the ASP.NET tab on properties for IIS.