First I would like to mention that I posted this here, but I wanted to make sure it gets maximum exposure for all the frustrated masses trying to install DNN on a shared GoDaddy Server.
If you haven't already done so, before you read my post it is highly recommended to read sbwalker's installation/upgrade post here
Here goes...
I have only setup one open source
software solution and it was 2 years ago in college, an
osCommerce/Apache/MySQL website. It took 3 of us hours and hours to set
it up and I remembered thinking, 'I just wish someone had a list of their
experiences installing to help us.' Since you all helped me so much I
want to layout everything I have learned today about setting this DNN up on
GoDaddy. First, I am no .NET expert. I am using this tool with VS
2005 to further develop my skills; my job is VBA programming Access
applications. I just want anyone to know that anyone can do this with
enough perseverance and dedication. Yes it is aggravating. No it is
not easy. But here is a compilation of what I have learned. Oh and
by the way, I received many of the error listed on this thread. This is
not a step by step guide, it is simply the knowledge I have gained from
setting this up on my own site.
There is no one solution that works. I used a compilation of different
tutorials like the one above and 8 eights hours later, shazaam, it
worked. I hope after someone reads this I save someone 6 hours of
misery.
First the tutorial above (www.northernstarsolutions.com/Troubleshooting/GodaddyHosting) worked after I tried in vein for hours to install
the Source (4.0.3 Source). So after clearing my ftp server for the
second time I figured I would give this a try. Make sure you install
the Database right the first time. I created one with a DSN and one
with a schema and one with both. DON'T. Literally just go into your
content management page and click on the SQL Database icon, put in a username
and password and create. I didn't notice anyone who specificlly
mentioned exactly what to do.
MichaelWinter posted something similar to this on the first page but it
didn't mention the DSN. Maybe it should have been understood, but it
went over my head.
Second, for goodness sakes, don't even try to install on the root unless you
have a virtual dedicated or dedicated server. If you are on a shared
server (the Deluxe($6.99/mo) or the Premium ($14.99/mo))
you have to go to you content management page click on the Directory
Management icon under the Content header. Press the Create Directory and name
it what you will (I named mine start, but I have seen portal, home,
dnn) give it the following rights (Read, Web, Write, Set Root). I
learned this on a post from PerryM. This was a very confusing point for
me because there is so much conflict about what are the exact rights that you
need and how you have to turn them off to install. I didn't turn them
off and it worked fine.
Download DotNetNuke 4.0.3 Install, if you are a
newbie. It is much more straightforward than the Source. There is no
updated step by step guide for 4.0.3. I realized after reading the step
by step laid out by thekubrix here (http://forums.asp.net/1/958251/ShowThread.aspx)
or (http://www.airdepth.com/site/OpenSourceSupport/Windows/DotNetNuke/Setup/tabid/64/Default.aspx).
What is laid out here is a great reference, but if you are installing the
4.0.3 I suggest you download DotNetNuke 3.2.2 Source so you can see firsthand
that the file structure of 3.2.2 Source and 4.0.3 source are different.
This makes it difficult to figure out the exact structure of how it should be
uploaded to your ftp. Like I said above, after studying it, attempting
multiple installs based off ofthekubrix's instructions I gave up on the
source and tried the Install.
Errors I received while trying to install the
Source:
Runtime Error
Description: An application error occurred on the server. The
current custom error settings for this application prevent the details of the
application error from being viewed remotely (for security reasons). It
could, however, be viewed by browsers running on the local server machine.
Details: To enable the details of this specific error message to be
viewable on remote machines, please create a <customErrors> tag within
a "web.config" configuration file located in the root directory of
the current web application. This <customErrors> tag should then have
its "mode" attribute set to "Off".
- I
should have read thekubrix's optional instruction to switch CustomErrors
to off. This is an easy fix in the web.config file.
Configuration Error
Description: An error occurred during the processing of a
configuration file required to service this request. Please review the
specific error details below and modify your configuration file
appropriately.
Parser Error Message: It is an error to use a section registered as
allowDefinition='MachineToApplication' beyond application level. This
error can be caused by a virtual directory not being configured as an
application in IIS.
Source Error:
Line 47: </appSettings> Line 48: <system.web> Line 49: <machineKey Line 50: validationKey="F9D1A2D3E1D3E2F7B3D9F90FF3965ABDAC304902" Line 51: decryptionKey="F9D1A2D3E1D3E2F7B3D9F90FF3965ABDAC304902F8D923AC" |
- This
is the error that drove me to give up on the Source and move to the
Install package.
- There
were so many conflicting reports on the forums about what this actually
meant.
- From
what I gathered it basically means that you are trying to install an
application in a non-virtual directory. I realized after diving
into the Install package what I had done wrong. I had my Website
Folder (located in theDotNetNuke 4.0.3 Source zip) in the ftp
hierarchy like so, / Username(root)/start/website/web.config.
- Since
I had laid out my new virtual directory (remember the custom directory
under directory management) as Start and uploaded my Source files to
here it made a new folder called Website. Well I had not laid out
/ Username(root)/start/website/ as a custom directory. So
it gave me this error.
- If
I am wrong, someone correct me, but from all the forums I read, this is
the only solution that actually made any sense. Most people were
throwing out ideas that had nothing to do with IIS. Check it out
here (http://forums.asp.net/thread/1139807.aspx)
- I
realize now that I could probably set it up with the Source, but since I
know for certain how to do it with the Install that is what I will use
from now on.
- Reminder to set a folder as an application folder you have to check the Set Root Option in GoDaddy.
- From Godaddy (set Root): This enables
you to set the directory/subdirectory folder as an application root in
the Web server within your site. An application root is the root
directory for an application. All directories and files contained
within the application root are considered part of the application.
Now onto the Install package. I owe this success to PerryM's post on
page 5. (http://www.dotnetnuke.com/Community/ForumsDotNetNuke/tabid/795/forumid/107/threadid/16090/threadpage/5/scope/posts/Default.aspx)
After you setup your custom directory and your sub directories (www.northernstarsolutions.com/Troubleshooting/GodaddyHosting) you will need to go into your extracted files on your
hard drive (the ones you extracted from the zip file you downloaded). I
did what PerryM did and changed the name of top file from DotNetNuke_4.0.3_Install
(this is the name WinZip gave it when I extracted it) to the name of my
DNN Content Root (/ Username(root)/start/) Start. This is what
PerryM suggested and it worked for me. Also make sure that you
setup those subdirectories' permissions exactly as described in
nothernstarsolutions.
Also there are the inevitable database questions. While northernstar
and thekubrix's threads give you a good idea of how to setup your web.config,
the post listed by srstuart on page 5 give a much more detailed explanation.
(http://www.dotnetnuke.com/Community/ForumsDotNetNuke/tabid/795/forumid/107/threadid/16090/threadpage/5/scope/posts/Default.aspx)
i did exactly what was listed here. Before I found this I was having
all types of database connection errors. I didn't realize that I have
to comment out the VS 2005 connections. This step is very important to
get your DB setup correctly.
Otherwise you will get the dreaded DotNetNuke Upgrade Error. Also
remember the following: DON'T COPY YOUR DATABASE LOCATION (whsql-v08.prod.mesa1.secureserver.net)
FROM GODADDY CONFIG MGMT CONSOLE. Type it into your web.config
file. This can lead to blanks and other space holders being placed
without your knowledge because you will not see the difference in the
web.config. You will only see the resulting errors. Also remember
that the argument after 'Database=' should only be DB_12345.
I made the mistake of having a DSN so I put something like mssql.DB_12345.dsn.
This does not work. It will give you errors and have you pulling
your hair out. So make sure you have 2 DB connections in your
web.config as listed in the post above from srstuart.
I also saw a post about modifying the Install.aspx.vb file. I tried to
follow this post (http://www.dotnetnuke.com/Community/ForumsDotNetNuke/tabid/795/forumid/107/threadid/16090/threadpage/6/scope/posts/Default.aspx)
from dempseyonline and it didn't work for me. I reapplied my original
file from the zip and that is when it all finally came together.
I also recieved this error:
DotNetNuke Upgrade Error
The Assembly Version (
[ASSEMBLYVERSION] ) does not match the Database Version ( [DATABASEVERSION] )
ERROR: Could not connect to database.
The stored procedure
'tbarnett.GetPortalAliasByPortalID' doesn't exist.
If I forgot something or speak like a drunkard I am sorry
it is 1:30am, I have work at 7:30 and I am exhausted. GoDaddy makes DNN
setup an exhausting task. Thanks GoDaddy, you stole my heart with your low
low prices, tasteless commercials, and insane bandwidth limits, then stomped
on it with your user non-rights, limited documentation, and poor
customer service.
Oh, don't bother calling GoDaddy, they might as well
stick their hand and pointer finger through the phone to better illustrate
how nothing is their fault. It’s yours. :p
|