Problems installing DNN v5? Read on ...

Discussion in 'Third-party applications' started by Chrissie, Jan 24, 2010.

  1. Hi

    I'm just trying this so I don't know if this will solve all our problems, but please download and install DNN v5.2.2 Community Edition. DNN have fixed several bugs in this issue including:

    • Fixed issue with missing databaseowner and objectqualifier tags in the 5.2.1 SqlDataProvider script.
    • Fixed issue where portal templates ceased working in 5.2.1.
    • Reverted syntax that grants stored procedure permissions to previous version, as GRANT EXECUTE TO was problematic on shared hosts.

    The last one seemingly being the most problematic for us :rolleyes:

    I will report back my findings! Unless of course anyone has tried this and is still having problems ....... :)

    Cheers Guys
     
  2. Sorry to advise BUT it's that version that I spent hours trying to install last night.
     
  3. OK - I have to say that my first attempt was successful :) Armed with the frustration of failing to install v5.2.1 and subsequent lessons learned installing v4.9.5, here's what I did:

    To make sure the installation scripts were not being compromised by anything I had tried earlier, I went for a completely clean NEW install (not an upgrade - I'm going to test this on my v4.9.5 later ...)

    1. Download v5.2.2 Install Package to your PC and unzip to a directory
    2. Make a back-up copy of web.config
    3. Edit web.config thus:

    Under the <connections> tag, delete the line for SQL Express and uncomment the SQL line. Edit it with your database details as below:

    <connectionStrings>
    <!-- Connection String for SQL Server 2005/2008 -->
    <add name="SiteSqlServer" connectionString="Server=tcp:s01.Winhost.com;Database=DB_2909_YourDataBaseName;uid=;pwd=;" providerName="System.Data.SqlClient" />
    </connectionStrings>

    NOTE: I have left the uid and pwd fields blank. This will force the install not to use the auto install wizard. I wanted to control the installation so that if it failed I would know at which stage.

    Similarly for the database string in the <appSettings> tag. Delete the line for SQL Express, uncomment and edit the line for SQL as below:

    <appSettings>
    <!-- Connection String for SQL Server 2005/2008 - kept for backwards compatability - legacy modules -->
    <add key="SiteSqlServer" value="Server=tcp:s01.Winhost.com;Database=DB_2909_YourDataBaseName;uid=;pwd=;"/>

    NOTE: uid and pwd is left blank again for the reason stated above

    4. Create a new folder on your website
    5. Upload the contents of the directory you unzipped DNN to, including the edited web.config file :) As you know this will take a while .....
    6. In Winhost Site Manager, select Application Starting Point and add the name of the new folder you created for DNN v5.2.2
    7. In Winhost Site Manager MS SQL 2008 create a NEW blank database. Be sure to name it the same as you have declared in the web.config file. Again the reason for this was to make sure the installation script wasn't compromised by any previous attempts!
    8. Using IIS Manager select your DNN v5.2.2 application folder and double-click .NET Trust Levels Set the level to Full and click on Apply
    9. Using your browser navigate to the DNN v5.2.2 site e.g. http://www.yoursite.com/DNN522
    10. The install script should start and you will get the option to perform a custom install or a typical install. I went for custom as I wanted to control every event! Then follow the screen prompts.
    11. When it comes to connecting to your database, specify the name of the database you created, and the username and password. Leave the run as db owner tick box ticked and don't specify an object qualifier. This will make sure that the installation script uses the default DBO schema. Make sure to test the connection before you proceed.
    12. At the end you should have a newly installed DNN v5.2.2 site :cool:


    I hope this works for you - please post any problems and if I can help, I will :)

    PS when I did a Preview Post there looked like there was a space in Database in the connection strings settings - which of course there isn't!! :rolleyes:
     
    Last edited by a moderator: Oct 14, 2015
  4. Well, I'm on a role now :)

    I have just successfully upgraded my DNN v4.9.5 to v5.2.2 This is what I did:

    1. Download the DNN v5.2.2 Upgrade Package
    2. Unzip to a folder on your PC
    3. Back-up your current DNN installation and DNN database

    NOTE: I like to live dangerously, so I just took a copy of my web.config file and went for it!

    4. Upload the unzipped files to the location of your current DNN installation
    5. Overwrite all folders and files
    6. In your browser navigate to your existing site e.g. http://www.yoursite.com/existingdnn
    7. The auto install wizard will start and perform an auto upgrade
    8. At the end follow the link to your site, which may take a few moments to load - and you should have your newly upgraded DNN site

    I did get one error - one of the application updates, but this was due to the customisation I've done. I have a few tweaks to do, but essentially the upgrade worked a treat.

    Hope this helps :cool:
     
  5. Thanks for your perseverance.

    I followed your instructions and am immediately presented with:-

    DotNetNuke Configuration Error
    Could not find a part of the path 'E:\web\aquarius\dnn522\Config\Backup_20101241414\web_.config'.

    Your DotNetNuke installation appears to have a security settings problem (most likely permissions). DotNetNuke has extensive file upload capabilities for content, modules, and skins. These features require custom security settings so that the application is able to create and remove files in your website.

    Using Windows Explorer, browse to the root folder of the website ( C:\DotNetNuke by default ). Right-click the folder and select Sharing and Security from the popup menu ( please note that if you are using Windows XP you may need to Disable Simple File Sharing before these options are displayed ). Select the Security tab. Add the appropriate User Account and set the Permissions.
    Your Operation System appears to be Windows Vista

    * If using Windows 2000 - IIS5
    1. the [SERVER]\ASPNET User Account must have Read, Write, and Change Control of the virtual root of your website.

    * If using Windows 2003 - IIS6 or Vista/Windows 2008 - IIS7
    1. the NT AUTHORITY\NETWORK SERVICE User Account must have Read, Write, and Change Control of the virtual root of your website.​

    The only difference I can see in your configuration is that you are located on a different server to me. You are on s01.Winhost.com whilst I am on s02.Winhost.com .

    I then edited web.config and inserted my sql password and login, repeated the above step with the same result above. This time, after hitting <Return> I selected an Auto install which ran as per my previous post until I got this error:

    [SecurityException: Request for the permission of type 'System.Security.Permissions.FileIOPermission, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' failed.]
    System.Security.CodeAccessSecurityEngine.Check(Object demand, StackCrawlMark& stackMark, Boolean isPermSet) +0
    System.Security.CodeAccessPermission.Demand() +58
    System.IO.Directory.InternalCreateDirectory(String fullPath, String path, DirectorySecurity dirSecurity) +595
    System.IO.DirectoryInfo.Create() +15
    DotNetNuke.Services.Installer.Util.WriteStream(Stream SourceStream, String DestFileName) +72
    DotNetNuke.Services.Installer.InstallerInfo.ReadZipStream(Stream inputStream, Boolean isEmbeddedZip) +207
    DotNetNuke.Services.Installer.InstallerInfo..ctor(Stream inputStream, String sitePath) +209
    DotNetNuke.Services.Installer.Installer..ctor(Stream inputStream, String physicalSitePath, Boolean loadManifest, Boolean deleteTemp) +61
    DotNetNuke.Services.Upgrade.Upgrade.InstallPackage(String strFile, String packageType, Boolean writeFeedback) +215
    DotNetNuke.Services.Upgrade.Upgrade.InstallPackages(String packageType, Boolean writeFeedback) +215
    DotNetNuke.Services.Upgrade.Upgrade.InstallDNN(String strProviderPath) +275
    DotNetNuke.Services.Install.Install.InstallApplication() +440
    DotNetNuke.Services.Install.Install.Page_Load(Object sender, EventArgs e) +256
    System.Web.UI.Control.OnLoad(EventArgs e) +99
    System.Web.UI.Control.LoadRecursive() +50
    System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +6785
    System.Web.UI.Page.ProcessRequest(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +242
    System.Web.UI.Page.ProcessRequest() +80
    System.Web.UI.Page.ProcessRequestWithNoAssert(HttpContext context) +21
    System.Web.UI.Page.ProcessRequest(HttpContext context) +49
    ASP.install_install_aspx.ProcessRequest(HttpContext context) +4
    System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +181
    System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +75​

    It seems to me that the security settings on s01 and s02 are not the same.

    I'll submit another Support Request (the first response said they can't help me with DNN but they would try to get someone to read the forums) this time asking for specific info on the security issue above.

    Keep up the good work Chrissie :) - very much appreciated.

    BTW: The only differences in web.config and the other required actions that I had are the connection string settings which are different to what is on the Winhost sql management page.
     
    Last edited by a moderator: Oct 14, 2015
  6. Can you check the chmod settings on your website folders. Mine are set to 777. I know this gives read, write & execute to User, Group & Other, but it shouldn't pose a security risk - assuming that the Winhost servers are run in a chroot environment.

    This setting should give the DNN script all the permissions it needs to install DNN

    Get back to me if you're still having problems and maybe I can assist in a re-install for you - I won't be checking the forum very regularly over the next 48 hours, but I'll reply as soon as I can :)

    Stick with it - nothing is impossible - somethings take a while to get figured out is all ... ;)
     
  7. Hi,

    Thanks for your response - This was actually one of the first things I checked.

    I'm still waiting for support to confirm s02.Winhost.com has the same security settings as s01.Winhost.com before proceeding any further with DNN.

    I'm going to try something else that requires the same security permissions and see if it works.
     
    Last edited by a moderator: Oct 14, 2015
  8. Ray

    Ray

    What version of DNN did you download from the DNN website? They have two you can download, either the 30 day trial professional edition or the free community edition.

    I just tested the DNN free community edition and I was able to configure it with my test account pointing to s02.Winhost.com SQL server without any problems.
     
    Last edited by a moderator: Oct 14, 2015
  9. FYI, 777 is a *nix setting and doesn't really translate to a Windows file system. Your FTP program may tell you it successfully chmod-ed a directory, but the directory permissions will not be equivalent to 777.
     
  10. Hi Ray,

    Thanks for your response.

    The DNN free community edition 5.02.02 is the one I've been trying to install for the past 4 days.

    The only discernible difference between Chrissie's successful installation and mine is the connection string pointing to s01 and s02. Whether Chrissie's web host is w01 I cannot immediately tell. I'll try to discover this and let you know.

    Can you also confirm NT AUTHORITY\NETWORK SERVICE User Account (which is not the same user as the ASPNet IUSR afaik) on my web server w02.Winhost.com has Read, Write, and Change Control of the virtual root of aquarius.w02.Winhost.com. After all, the security error is occurring on w02, not s02 as I am accessing my database without any problems at all.

    Thank you.

    Hi Hank,

    Thanks for this helpful reminder. I haven't needed to change directory or file attributes at all as they have been set properly 'out-of-the-box'. The directory/file attributes permissions AFAIK have never been an issue with me.:) I think the file attributes issue was raised elsewhere by a Winhost staff member as something else to check.

    My reported problem is with User Permissions which I am being told by the web server (w02) are insufficient for the program (in this case DNN) to work. :(

    If I ask and/or pay for assistance with this from a DNN community member or 'expert' the first question they are going to ask me is to confirm that the error reported by my web server (as I said above - the error is generated by the web server not DNN) has been fixed.

    As Chrissie said, we'll get there eventually. :)
     
    Last edited by a moderator: Oct 14, 2015
  11. Ray

    Ray

    By default the NTFS permissions for the ASPNet IUSR which is what DNN will be using to authenticate itself against IIS 7 server should have full Read and Write access within the root and all contents and folders within it.

    I can only say that you check the files you upload and make sure they're not in read only mode. Sometimes they are set in the local computer and when uploaded to the server those settings gets transferred.

    Also if you really want to make sure you can open a ticket to the support department to have to reset your root directory. This will ensure that all the NTFS permissions are set to the default state which is Full Read and Write, but this will also mean that all files and folders currently on the root will be wiped out. Then you will need to upload the DNN application back to our server.
     
  12. Thanks Ray for this information. When setting a directory as an Application Start Point, do the permissions change?

    Whilst I am not as expert as you in such matters, can you please just confirm to me what I asked originally or explain why the error message thrown by w02 can apparently be ignored viz:

    Can you also confirm NT AUTHORITY\NETWORK SERVICE User Account (which is not the same user as the ASPNet IUSR afaik) on my web server w02.Winhost.com has Read, Write, and Change Control of the virtual root of aquarius.w02.Winhost.com.

    If the two different accounts (NT AUTHORITY\NETWORK SERVICE and ASPNet IUSR) are in fact the same then please can you explain why w02 is reporting this permissions error at all.

    Thanks.

    I've attached the error message page if that will be of any use.
     
    Last edited by a moderator: Oct 14, 2015
  13. Ray

    Ray

    You do not use "NT AUTHORITY\NETWORK SERVICE User Account " to authenticate yourself against the IIS 7 server. This is not how you setup a web server in a shared hosting environment. All authentication that your website will perform against the IIS 7 server will be using the account ASPNet IUSR. Each site account will have its own unique ASPNet IUSR specifically for that account. And all ASPNet IUSR will have read and write permission to that account.
     
  14. I'm not "using" anything. :confused: I am simply doing what Chrissie has done as far as I can tell. I am guessing Chrissie is hosted on w01 whilst I'm on w02. With the limited access available to me that is the only difference between our setups. Chrissie's works and mine doesn't. :eek:

    Am I also supposed to manually reconfigure something on my chosen DNN directory either via your Control Panel or my IIS7 Remote Management?

    Chrissie has gone away for a couple of days so I cannot quiz her any further as to any other 'undocumented' changes she has made to get her DNN installation working on your servers :(

    ---

    In addition to the web.config changes posted by Chrissie, I needed to edit the web.config file so that the trust level was Full and not Medium as in the distribution package.

    <!-- set code access security trust level - this is generally set in the machine.config -->
    <trust level="Full" originUrl=".*" />

    Thanks to Ray at Winhost support for finding this for me. :D
     
  15. I'm back :)

    How's it going? I didn't specifically amend the trust level in the web.config file. It remains commented out. What I did do is set the .NET Trust Level to Full for the DNN Application using IIS Manager (remote cconnection to my domain)

    Use the .NET Trust Levels feature page in IIS manager to set the trust element in the Web.config file. The trust element enables you to configure the level of code access security (CAS) that is applied to an application.

    Full (internal) - Specifies unrestricted permissions. Grants the ASP.NET application permissions to access any resource that is subject to operating system security. All privileged operations are supported.

    I'm assuming that this is what does in fact happen - at least it worked for me!

    This may help - hope so!
     
  16. Ray

    Ray

    I have yet able to replicate your issue with "NT AUTHORITY\NETWORK SERVICE User Account ". What version of DNN are you trying to install? On the DNN website there are two versions you can download and try to install on our server. There is the Professional version which gives you a 30 day trial and the free community version. The community version I was able to download and install on our server as a test without any problems. I installed it with a test account which simulates what our customers go through. I did not get any special administrative rights or privilages and I used the accounts ASPNet IUSR for authentication without any problems.
     
  17. Hi Ray,

    Please have a look at my post of 26th January 2010, 11:04 am.

    That 'original' reply post has been merged [but not by me] with another reply post in which I thanked you for pointing out the cause of my problem via a 'formal' support request. That is of course if you are the same Ray who assisted me via the support request.

    My reply to Chrissie also has further information.
     
  18. Somewhere along the line I must have uncommented the Trust level in the web.config file which as you know records 'medium' level. :( I probably did that as the web server was telling me that I (well - DNN specifically) was trying to do something that I didn't have the right permission (or level) to do.

    Frankly, the error message created by the web server (and not DNN) was telling me where the problem was all the time. :)

    I had done this as well but web.config overrides the settings for the directory that the web.config file is in.

    DNN is now working fine after following your instructions and fixing the permissions issue. :)

    Thanks again.
     
  19. You're welcome :)
     
  20. FYI - Although it's not recommended, I did install DNN into the root.

    However, the reason for my post is this; I too was getting the same permission messages as manlyboy. When I used IIS Manager and looked at the .NET Trust Level, it was set to "Full (internal)" by default.

    So after a few (refuse to say how many times) failed permission tests, I went and changed the .NET Trust Level to medium, clicked "apply" and then switched it back to "Full." And voila...it worked and I no longer have permission issues:)

    Hopefully this helps give another possible solution.
     
  21. Well that's interesting. Thanks for posting that.
     

Share This Page