Avatar billede aagesen Nybegynder
24. august 2005 - 10:02 Der er 26 kommentarer

DotNetNuke og MySql hos UnoEuro

Hej

Nu har jeg søgt Nettet og alt hvad jeg kan finde af diskussionsfora (danske og udenlandske) igennem - men stadig uden succes. H J Æ L P ........

Jeg har uploadet DotNetNuke 2.1.2 samt DotNetNuke.MySqlProvider_PA_2.1.2 til mit webhotel hos UnoEuro men får følgende fejl når jeg forsøger.
Se fejlmeddelse på http://www.aagesen.net/DotNetNuke

Hvor og hvordan skal jeg rette i min web.config der gengives i herunder. Min web.config ligger i roden og samtidig i folderen hvor de øvrige DNN-filer ligger. Jeg har ikke oprettet nogen database, da jeg håber at DNN gør det for mig ?

UnoEuro oplyser følgende connectionstring til MySql-databaser hos dem:
-----------------------------------------------------------------
<%
SQLserveradr="[mysqlserver]"
SQLdatabase="[mysqldatabase]"
SQLlogin="[brugernavn]"
SQLpassword="password"

Set Conn = Server.CreateObject("ADODB.Connection")

conStr = "driver={MySql};server="& SQLserveradr &";database="& SQLdatabase
conStr = conStr & ";uid="& SQLlogin &";pwd="& SQLpassword & ";OPTION=3"

Conn.Open conStr
%>
----------------------------------------------------------------

Min web.config:
------------------------------------------------
<configuration>

    <!-- register local configuration handlers -->
    <configSections>
        <sectionGroup name="dotnetnuke">
            <section name="data" type="DotNetNuke.ProviderConfigurationHandler, DotNetNuke" />
            <section name="logging" type="DotNetNuke.ProviderConfigurationHandler, DotNetNuke" />
            <section name="scheduling" type="DotNetNuke.ProviderConfigurationHandler, DotNetNuke" />
            <section name="htmlEditor" type="DotNetNuke.ProviderConfigurationHandler, DotNetNuke" />
        </sectionGroup>
    </configSections>

    <!-- Sql Server connection string for support of pre DNN 2.0 Private Assemblies
        The new connection string (for DNN 2.0) is in the section dotnetnuke (providers) -->
    <appSettings>
        <add key="connectionString" value="Server=localhost;Database=DotNetNuke;uid=;pwd=;" />
    </appSettings>

    <system.web>

        <!-- set debugmode to false for running application -->
        <compilation debug="false" />

        <!-- permits errors to be displayed for remote clients -->
        <customErrors mode="Off"/>

        <!-- Forms or Windows authentication -->
        <authentication mode="Forms">
        <forms name=".DOTNETNUKE" protection="All" timeout="60" />
        </authentication>
        <!--
            <identity impersonate="true"/>
            <authentication mode="Windows">
            </authentication>
        -->

        <!-- allow large file uploads -->
        <httpRuntime useFullyQualifiedRedirectUrl="true" maxRequestLength="8192" />
       
        <!--  GLOBALIZATION
        This section sets the globalization settings of the application.
        Utf-8 is not supported on Netscape 4.x
        If you need netscape compatiblity leave iso-8859-1.
        UTF-8 is recommended for complex languages
        -->
        <globalization culture="en-US" uiCulture="en" requestEncoding="UTF-8" responseEncoding="UTF-8" fileEncoding="UTF-8" />
        <!--<globalization culture="en-US" uiCulture="en"  fileEncoding="iso-8859-1" requestEncoding="iso-8859-1" responseEncoding="iso-8859-1"/>-->

        <!-- page level options -->
        <pages validateRequest="false" enableViewStateMac="true" />

    </system.web>

    <dotnetnuke>
        <htmlEditor defaultProvider="FtbHtmlEditorProvider" >
            <providers>
                <clear/>
                <add name = "FtbHtmlEditorProvider"
                        type = "DotNetNuke.HtmlEditor.FtbHtmlEditorProvider, DotNetNuke.FtbHtmlEditorProvider"                   
                        providerPath = "~\Providers\HtmlEditorProviders\FtbHtmlEditorProvider\"
                />
            </providers>
        </htmlEditor>
        <data defaultProvider="AccessDataProvider" >
            <providers>
                <clear/>
                <add name = "SqlDataProvider"
                        type = "DotNetNuke.Data.SqlDataProvider, DotNetNuke.SqlDataProvider"
                        connectionString = "Server=localhost;Database=DotNetNuke;uid=;pwd=;"
                        providerPath = "~\Providers\DataProviders\SqlDataProvider\"
                        objectQualifier = ""
                        databaseOwner = "dbo"
                        upgradeConnectionString = ""
                />
                <add name = "AccessDataProvider"
                        type = "DotNetNuke.Data.AccessDataProvider, DotNetNuke.AccessDataProvider"
                        connectionString = "PROVIDER=Microsoft.Jet.OLEDB.4.0;"
                        providerPath = "~\Providers\DataProviders\AccessDataProvider\"
                        objectQualifier = "DotNetNuke"
                        databaseFilename = "DotNetNuke.mdb.resources"
        />
            </providers>
        </data>
        <logging defaultProvider="XMLLoggingProvider" >
            <providers>
                <clear/>
                <add name = "XMLLoggingProvider"
                        type = "DotNetNuke.Logging.XMLLoggingProvider, DotNetNuke.XMLLoggingProvider"
                        configfilename="LogConfig.xml.resources"
                        providerPath = "~\Providers\LoggingProviders\XMLLoggingProvider\"
                />
            </providers>
        </logging>
        <scheduling defaultProvider="DNNScheduler" >
            <providers>
                <clear/>
                <add name = "DNNScheduler"
                        type = "DotNetNuke.Scheduling.DNNScheduler, DotNetNuke.DNNScheduler"
                        providerPath = "~\Providers\SchedulingProviders\DNNScheduler\"
                        debug="false"
                        maxThreads="-1"
                        enabled="true"
                />
            </providers>
        </scheduling>

    </dotnetnuke>
</configuration>

------------------------------------------------
Avatar billede snepnet Nybegynder
24. august 2005 - 10:22 #1
"This error can be caused by a virtual directory not being configured as an application in IIS"

du kan ringe til udbyderen og spørge om det er noget de gør (altså konfigurere en af dine underfoldere som en applikation), eller også kan du sørge for at lægge din web.config i root (som efter al sansynlighed er konfigureret som en application).

mvh
Avatar billede aagesen Nybegynder
24. august 2005 - 11:01 #2
jeg har prøvet at have web.config samt global.asax placeret i public_html idet UnoEuro siger at roden er configureret som Application. Det virker bare stadig ikke - any idears ?
Avatar billede snepnet Nybegynder
24. august 2005 - 11:06 #3
får du fuldstændig samme fejlmelding når den ligger i roden?
(du skal huske at fjerne konfigurationsfilerne fra subdirs også)
mvh
Avatar billede aagesen Nybegynder
24. august 2005 - 11:15 #4
Nej - havde glemt at fjerne fra subdir. Nu ligger global.asax + web.config i public_html og web.config er slettet i folderen DotNetNuke. Går jeg via browseren på http://www.aagesen.net kommer min aktuelle side helt rigtig frem. Går jeg på http://www.aagesen.net/DotNetNuke får jeg nu følgende fejl:

Er jeg kommet lidt længere ;-) ??

---------------------
Server Error in '/' Application.

Parser Error
Description: An error occurred during the parsing of a resource required to service this request. Please review the following specific parse error details and modify your source file appropriately.

Parser Error Message: Could not load type 'DotNetNuke.Global'.

Source Error:

Line 1:  <%@ Application Codebehind="Global.asax.vb" Inherits="DotNetNuke.Global" %>

Source File: d:\web\localuser\aagesen.net\public_html\global.asax    Line: 1

Version Information: Microsoft .NET Framework Version:1.1.4322.2032; ASP.NET Version:1.1.4322.2032
---------------------
Avatar billede snepnet Nybegynder
24. august 2005 - 11:27 #5
du skal ikke flytte rundt på din global.aspx-fil... kun konfigurationsfilen.
mvh
Avatar billede erikjacobsen Ekspert
24. august 2005 - 11:49 #6
Hvis du laver et subdomæne hos unoeuro, nuke.aagesen.net, bliver det til en ny applikation.
Avatar billede erikjacobsen Ekspert
24. august 2005 - 11:58 #7
"Jeg har ikke oprettet nogen database, da jeg håber at DNN gør det for mig ?" - det kan den ikke. Den vil nok oprette tabeller i den database du har fået fra unoeuro.
Avatar billede aagesen Nybegynder
24. august 2005 - 12:22 #8
ok - har nu udelukkende web.config liggende i public_html - global.asax ligger i subfolderen - stadig fejl.

Min MySqlprovider ligger i følgende mappe: public_html/DotNetNuke/Providers/Dataproviders

er det den korrekte placering og kan fejlene skyldes at connectionstring IKKE er rettet i web.config endnu. Jeg har nemlig prøvet at retten den men er ikke sikker på at jeg fik det gjort korrekt hvorfor jeg ændrede web.config til det oprindelige.

Nogen der kan beskrive hvor og hvordan jeg skal tilrette web.config mht. connectionstring ?
Avatar billede snepnet Nybegynder
24. august 2005 - 12:34 #9
det står i den fil du postede tidligere og iht de kommentarer der står højere oppe virker det korrekt, men du skal så nok lige sørge for at angive brugernavn og adgangskode ;o) :

<add name = "SqlDataProvider"
        type = "DotNetNuke.Data.SqlDataProvider, DotNetNuke.SqlDataProvider"
        connectionString = "Server=localhost;Database=DotNetNuke;uid=;pwd=;"
        providerPath = "~\Providers\DataProviders\SqlDataProvider\"
        objectQualifier = ""
        databaseOwner = "dbo"
        upgradeConnectionString = ""
/>

men hov - du ville bruge en mysql-provider.... den skal du så skrive i din konfigurationsfil, og angive den som default vil jeg tro.
(i øjeblikket er det en accessprovider der er default)
mvh
Avatar billede aagesen Nybegynder
24. august 2005 - 12:42 #10
Men hvordan tilføjer jeg så MySqlprovideren til web.config ?

Mit webhotel understøtter også Access og hvis det er defaultprovideren - burden det så ikke bare virke eller skal jeg oprette en accessdatabase og uploade et eller andet sted ? hvordan skal denne database eventuelt se ud ( kolonner m.v. )

Endnu engang tak for jeres indsats - synes sgu det er lidt trickie - men har ikke helt givet op endnu ;-)
Avatar billede aagesen Nybegynder
24. august 2005 - 12:57 #11
Har nu oprettet et subdomæne http://nuke.aagesen.net/

Her er jeg vist kommet lidt længere, men hvad er fejlen så her ?
Avatar billede snepnet Nybegynder
24. august 2005 - 13:02 #12
"could not find file xxxx".... hvad mangler du at vide?
Avatar billede aagesen Nybegynder
24. august 2005 - 13:08 #13
UnoEuro oplyser følgende connectionstring til Access-databaser - hvordan retter jeg web.config ?


--------------------
<%
dim conn

function OpenConn( DBPath )

Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & DBPath

end function

OpenConn("d:/web/localuser/ditdomæne.dk/database/databasenavn.mdb")
%>
--------------------

eller

-------------------
<%
Conn = Server.CreateObject("ADODB.Connection");
Conn.Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("xxx.mdb"));
%>
--------------------
Avatar billede erikjacobsen Ekspert
24. august 2005 - 13:08 #14
"Could not connect to database"  ... du skal skrive connectionstring til den db du har hos unoeuro (og lad nu være med at vise password her *g*)
Avatar billede erikjacobsen Ekspert
24. august 2005 - 13:09 #15
Vil du ikke bruge mysql?
Avatar billede aagesen Nybegynder
24. august 2005 - 13:18 #16
Jeg vil heslt bruge MySql men kan ikke finde ud af at ændre web.config - så da jeg kom lidt længere på subdomænet tænkte jeg at det måske var vejen frem med Access ;-)

Problemet er bare at jeg ikke ved hvordan min connectionstring skal se ud - både for så vidt angår Access og MySql ?
Avatar billede snepnet Nybegynder
24. august 2005 - 13:21 #17
www.connectionstrings.com er altid god.
mvh
Avatar billede erikjacobsen Ekspert
24. august 2005 - 13:21 #18
Jeg har sådan en (C#):

private const String ConnStr = "Driver={MySQL};"
    + "Server=mysqlXXXXX.unoeuro.com;"
    + "Database=XXXXXXXX_db;"
    + "uid=XXXXXXXXXX;pwd=XXXXXXXXx;option=3";
Avatar billede aagesen Nybegynder
24. august 2005 - 13:32 #19
Kan godt tilpasse følgende kode :

private const String ConnStr = "Driver={MySQL};"
    + "Server=mysqlXXXXX.unoeuro.com;"
    + "Database=XXXXXXXX_db;"
    + "uid=XXXXXXXXXX;pwd=XXXXXXXXx;option=3";

Men hvor skal det stå i web.config - den fulde kode ville være superdejlig i forhold til min nuværende web.config som ser sådan ud:

Filen web.config:
----------------------
<configuration>

    <!-- register local configuration handlers -->
    <configSections>
        <sectionGroup name="dotnetnuke">
            <section name="data" type="DotNetNuke.ProviderConfigurationHandler, DotNetNuke" />
            <section name="logging" type="DotNetNuke.ProviderConfigurationHandler, DotNetNuke" />
            <section name="scheduling" type="DotNetNuke.ProviderConfigurationHandler, DotNetNuke" />
            <section name="htmlEditor" type="DotNetNuke.ProviderConfigurationHandler, DotNetNuke" />
        </sectionGroup>
    </configSections>

    <!-- Sql Server connection string for support of pre DNN 2.0 Private Assemblies
        The new connection string (for DNN 2.0) is in the section dotnetnuke (providers) -->
    <appSettings>
        <add key="connectionString" value="Server=localhost;Database=DotNetNuke;uid=;pwd=;" />
    </appSettings>

    <system.web>

        <!-- set debugmode to false for running application -->
        <compilation debug="false" />

        <!-- permits errors to be displayed for remote clients -->
        <customErrors mode="Off"/>

        <!-- Forms or Windows authentication -->
        <authentication mode="Forms">
        <forms name=".DOTNETNUKE" protection="All" timeout="60" />
        </authentication>
        <!--
            <identity impersonate="true"/>
            <authentication mode="Windows">
            </authentication>
        -->

        <!-- allow large file uploads -->
        <httpRuntime useFullyQualifiedRedirectUrl="true" maxRequestLength="8192" />
       
        <!--  GLOBALIZATION
        This section sets the globalization settings of the application.
        Utf-8 is not supported on Netscape 4.x
        If you need netscape compatiblity leave iso-8859-1.
        UTF-8 is recommended for complex languages
        -->
        <globalization culture="en-US" uiCulture="en" requestEncoding="UTF-8" responseEncoding="UTF-8" fileEncoding="UTF-8" />
        <!--<globalization culture="en-US" uiCulture="en"  fileEncoding="iso-8859-1" requestEncoding="iso-8859-1" responseEncoding="iso-8859-1"/>-->

        <!-- page level options -->
        <pages validateRequest="false" enableViewStateMac="true" />

    </system.web>

    <dotnetnuke>
        <htmlEditor defaultProvider="FtbHtmlEditorProvider" >
            <providers>
                <clear/>
                <add name = "FtbHtmlEditorProvider"
                        type = "DotNetNuke.HtmlEditor.FtbHtmlEditorProvider, DotNetNuke.FtbHtmlEditorProvider"                   
                        providerPath = "~\Providers\HtmlEditorProviders\FtbHtmlEditorProvider\"
                />
            </providers>
        </htmlEditor>
        <data defaultProvider="AccessDataProvider" >
            <providers>
                <clear/>
                <add name = "SqlDataProvider"
                        type = "DotNetNuke.Data.SqlDataProvider, DotNetNuke.SqlDataProvider"
                        connectionString = "Server=localhost;Database=DotNetNuke;uid=;pwd=;"
                        providerPath = "~\Providers\DataProviders\SqlDataProvider\"
                        objectQualifier = ""
                        databaseOwner = "dbo"
                        upgradeConnectionString = ""
                />
                <add name = "AccessDataProvider"
                        type = "DotNetNuke.Data.AccessDataProvider, DotNetNuke.AccessDataProvider"
                        connectionString = "PROVIDER=Microsoft.Jet.OLEDB.4.0;"
                        providerPath = "~\Providers\DataProviders\AccessDataProvider\"
                        objectQualifier = "DotNetNuke"
                        databaseFilename = "DotNetNuke.mdb.resources"
        />
            </providers>
        </data>
        <logging defaultProvider="XMLLoggingProvider" >
            <providers>
                <clear/>
                <add name = "XMLLoggingProvider"
                        type = "DotNetNuke.Logging.XMLLoggingProvider, DotNetNuke.XMLLoggingProvider"
                        configfilename="LogConfig.xml.resources"
                        providerPath = "~\Providers\LoggingProviders\XMLLoggingProvider\"
                />
            </providers>
        </logging>
        <scheduling defaultProvider="DNNScheduler" >
            <providers>
                <clear/>
                <add name = "DNNScheduler"
                        type = "DotNetNuke.Scheduling.DNNScheduler, DotNetNuke.DNNScheduler"
                        providerPath = "~\Providers\SchedulingProviders\DNNScheduler\"
                        debug="false"
                        maxThreads="-1"
                        enabled="true"
                />
            </providers>
        </scheduling>

    </dotnetnuke>
</configuration>
Avatar billede erikjacobsen Ekspert
24. august 2005 - 13:35 #20
<add key="connectionString" value="Server=localhost;Database=DotNetNuke;uid=;pwd=;" />
skal ændres til dine data
Avatar billede erikjacobsen Ekspert
24. august 2005 - 13:48 #21
Næh, der står at den linie er for "pre DNN 2.0" ...

Men et eller andet sted skal du jo skrive det.
Avatar billede aagesen Nybegynder
24. august 2005 - 14:05 #22
Kan stadig ikke få det til at virke selv ved rettelse til :

<add key="connectionString" value="Server=mysql1.unoeuro.com;Database=DotNetNuke;uid=MIN_DATABASE;pwd=MIT_KODEORD;" />

Er det den eneste ændring jeg skal lave - hvad med denne kode - er den korrekt ?

<data defaultProvider="SqlDataProvider" >
            <providers>
                <clear/>
                <add name = "SqlDataProvider"
                        type = "DotNetNuke.Data.SqlDataProvider, DotNetNuke.SqlDataProvider"
                        connectionString = "Server=;Database=DotNetNuke;uid=;pwd=;"
                        providerPath = "~\Providers\DataProviders\SqlDataProvider\"
                        objectQualifier = ""
                        databaseOwner = "dbo"
                        upgradeConnectionString = ""
                />
                <add name = "AccessDataProvider"
                        type = "DotNetNuke.Data.AccessDataProvider, DotNetNuke.AccessDataProvider"
                        connectionString = "PROVIDER=Microsoft.Jet.OLEDB.4.0;"
                        providerPath = "~\Providers\DataProviders\AccessDataProvider\"
                        objectQualifier = "DotNetNuke"
                        databaseFilename = "DotNetNuke.mdb.resources"
        />
            </providers>
Avatar billede erikjacobsen Ekspert
24. august 2005 - 14:09 #23
Jeg kender ikke dotnetnuke, så jeg giver op. Deres dokumentation må vise dig hvordan du bruger mysql - du skal ikke spilde tiden med at gætte dig frem.
Avatar billede aagesen Nybegynder
24. august 2005 - 14:15 #24
Det er bare helt i orden - du skal have mange tak for din hjælp og indsats. Jeg er også så småt selv ved at give op da dokumentationen ikke er alt for god ;-) Hvordan giver jeg dig nogle point for indsatsen ?
Avatar billede erikjacobsen Ekspert
24. august 2005 - 14:20 #25
Jeg samler slet ikke på point, tak.
Avatar billede aagesen Nybegynder
24. august 2005 - 15:07 #26
Ok - så får du ikke nogle ;-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester