söndag 16 januari 2011

WebMatrix - flera applikationer på webben

Det är fortfarande oklart varför det ibland fungerar och ibland inte fungerar när jag laddar upp en webb från den lokala datorn till webbhotellet. Nu ska jag söka efter en förklaring och samtidigt se hur man har flera olika applikationer på den externa webben samtidigt.

Nu rensar jag den publika versionen på allt innehåll. Skapar lokalt webben abc och anger de vanliga parametrarna för överföring till Space2u, dock anger jag site path till public_html/abc. Skapar sedan en fil med htlm-mallen och behåller namnet HTMLPage.html. Lägger till texten Detta är abc. Kör lokalt och ser att det fungerar.

Klickar på Publish och får det vanliga felmeddelandet. ASP.NET version är Unknown och Simple HTML page är Not Available. Dessa meddelanden förklaras på Microsoft WebMatrix: Publish Compatibility, men det verkar som om de inte är väsentliga. Så jag klickar Continue och två filer förs över: robots.txt och HTMLPage.html. Checkar med FileZilla att filerna kommit fram. Det är viktigt att välja Server, Tvinga fram visning av dolda filer för annar syns itne filerna på den externa webben. Filerna syns också i webbläsaren på adressen http://www.server42.se/abc/HTMLPage.html. Så långt ser allt bra ut.

Nu skapar jag en ny webb på samma sätt, men med namnet xyz. Inga problem - i vart fall så länge det gäller vanliga html-sidor. Nästa steg blir att lägga upp en aspx-sida i xyz-mappen. Döper filen till ASPXVB.aspx då denna mall förväntar VB-kod. Och publicerar den. Det fungerar inte alls: 404 - File or directory not found.

Och det är inte så konstigt. Aspx-filer kräver minst en web.config-fil. Skapar en ny fil med mallen web.config (4.0). Och då fungerar det: http://www.server42.se/xyz/aspxvb.aspx.

Nästa steg är att skapa en ny webb med en mall som inte är tom. Jag väljer Starter Site för den innehåller databasaccesser. Det är frestande att bara kopiera denna malls sidor innehållet i xyz, men det får anstå till en senare test.

Mallen innehåller också en ny filtyp: _siteLayout.cshtml. Måste läsa på om den. Dessutom används den nya symbolen @ som föregår Razor-satser. Funktionerna är bl.a. registrering, login, logout, ändra epostadress mm. Kör igenom funktionerna lokalt och allt ser ut att fungera. Publicerar så hela systemet till Space2u bestående av 43 filer och en sdf-databas.

När jag väljer http://www.server42.se/def/ så borde default-sidan visa sig, men  i stället visas 403 - Forbidden: Access is denied. Det beror troligen på att Default.cshtml inte godtas som defaultsida. Hur ändrar man på det? En möjlighet är kanske att skapa en sida som uppfattas som default och som sedan gör en redirect till Default.cshtml.

Men när jag anger adressen http://www.server42.se/def/Default.cshtml så kommer meddelandet
Server Error in '/' Application.
This type of page is not served.Description: The type of page you have requested is not served because it has been explicitly forbidden. The extension '.cshtml' may be incorrect. Please review the URL below and make sure that it is spelled correctly.
Och det ser ju ut att vara svårt att komma runt. Tyvärr är alla mallar gjorda för cshtml. Det blir ett brev till Space2u och sedan paus i WebMatrix-projektet.

Inga kommentarer:

Skicka en kommentar