Avatar billede Slettet bruger
08. juni 2009 - 20:17 Der er 26 kommentarer og
1 løsning

FCKEditor image upload problem

Hej.

Jeg har lidt problemer med at benytte upload/filhåndterings-funktionen i FCKEditor.
Jeg har hentet den seneste version + ASP.NET dll komponenten fra nettet og har placeret mappen fckeditor i roden af mit website.

Jeg tilgår editoren fra sider, der er placeret i en mappe i roden af websitet, men denne mappe er samtidig også en selvstændig ASP.NET applikation.

Der er ikke umiddelbart problemer med at loade editoren og jeg kan skrive tekst i den og gemme i en database.

Jeg har lavet en reference til FredCK.FCKeditorV2.dll fra admin-mappens web applikation i bin directory.

I min page_load metoder har jeg:
this.FCKeditor1.Height = 500;
this.FCKeditor1.ImageBrowserURL = "/Blog/BlogPictures/";

Dette virker med hensyn til størrelsen af boksen.

Når jeg forsøger at browse efter billeder, åbnes 'ressource browser', men så fremkommer følgende fejl:

'The server didn't reply with a proper XML data. Please check your configuration.'

Jeg er en smule kørt fast lige nu.
Har prøvet at lave ændriner i de forskellige .js filer osv., men dette er 'kørt tilbage' med en ny installation af FCKEditor, sådan at det meste nu igen er default.

Nogen hints til hvad der kan være galt?
Avatar billede dta Nybegynder
08. juni 2009 - 21:02 #1
Du skal rette i filen editor/filemanager/connectors/aspx/config.ascx

I denne fil bliver du forklaret at du skal definere funktionen CheckAuthentication() som bruges for at autorisere at brugere kan buge denne funktion. Men du skal definere hvorledes denne Authentication forgår.

Har du ikke brug for nogen sikkerhed kan du bare definere denne til true og upload vil virke
Avatar billede Slettet bruger
09. juni 2009 - 07:43 #2
Hej.

Det har jeg prøvet.
Nu har jeg igen sat den til at returnere true, men nu får jeg så en anden fejl:

HTTP Error 403.14 - Forbidden
The Web server is configured to not list the contents of this directory.

Requested url http://localhost:80/Blog/BlogPictures/

Hvis jeg så placerer en web.config fil i dette directory, der tillader directory browsing, så får jeg lov at liste indholdet, men funktionaliteten fra ressource explorer er der ikke længere, altså, jeg kan ikke uploade filer og oprette nye mapper.
Avatar billede dta Nybegynder
09. juni 2009 - 08:40 #3
Du skal bruge IIS før dette virker
Avatar billede Slettet bruger
09. juni 2009 - 11:39 #4
Det var også igennem IIS at jeg første gang enblede directory browsing for denne mappe.
Jeg har både forsøgt at konvertere mappen som applikation og virtual directory.
I anden omgang genbrugte jeg bare den web.config fil, som IIS lavede til mig første gang og dette ser ud til at virke.

Dog med den catch, at jeg kun får mulighed for at se mappestrukturen i mappen, men ikke får åbnet ressource browser fra FCKEditor.
Avatar billede Slettet bruger
09. juni 2009 - 13:38 #5
Evt. Nogen, der kan give en kort trinvis vejledning til hvordan den som standard sættes op? Altså med mindst mulige modifikationer, men med upload funktionalitet...
Avatar billede dta Nybegynder
10. juni 2009 - 08:31 #6
Det er vigtigt at du har læse og skrive adgang til biblioteket som du henviser til i din FCKConfig, men default hvis du bruger standardopsætningen /userfiles/ skulle der ikke være nogle problemer.

Du kan bruge filen fFCKeditor/editor/filemanager/connectors/uploadtest.html og test.html til at test og fejlrettelse
Avatar billede Slettet bruger
10. juni 2009 - 11:26 #7
Hej dta.
Tak for informationen. Jeg har testet med upload via den side du henviser til og får fejlen:

Could not load type 'FredCK.FCKeditorV2.FileBrowser.Uploader

og

/FCKeditor/editor/filemanager/connectors/aspx/upload.aspx

Jeg har som tidligere skrevet placeret fckeditor i roden af mit website, men tilgår den fra en undermappe/web applikation, hvor ddl'en er registreret.

Tror du fejlen herover skyldes, at ddl'en til fckeditor ikke er registreret under det 'primære' website?

Hvordan konfigureres det sådan, at fckeditor kan placeres i fx. en undermappe til roden af websitet?
Jeg vil egentlig helst have den der, blandt andet på grund af sikkerhed, så man ikke bare kan browse sig frem til de nfra roden, men også fordi det er i denne undermappe/applikation den skal bruges og derfor vil det nok være mest hensigtsmæssigt at samle det hele under denne mappe/applikation?
Avatar billede dta Nybegynder
10. juni 2009 - 11:40 #8
Du ska kikke på BasePath Property

<FCKeditorV2:FCKeditor ID="FCKeditorAd" BasePath="~/FCKeditor/" runat="server".....

Du kan også sætte defaul basepath i FCKconfig
Avatar billede Slettet bruger
10. juni 2009 - 12:08 #9
Ok, så langt så godt. Nu har jeg flyttet mappen fckeditor til den givne undermappe.
Jeg kalder så i min Page_Load:

this.FCKeditor1.BasePath = "~/fckeditor/";

Jeg kan ikke få det til at virke med de .js filer.
Hvis jeg ændrer basepath i filen fckeditor.js til:

FCKeditor.BasePath = '~/fckeditor/' ; eller til
FCKeditor.BasePath = '/mappenavn/fckeditor/' ;
virker det ikke.

Men så langt så godt :-)

Når jeg nu fra min webapplikation i undermappen kalder testsiden til upload-test FCKeditor/editor/filemanager/connectors/uploadtest.html, vises siden korrekt og jeg specificerer følgende:

1. FileUploader: ASP.NET
2. Resource Type: Image
3. Current Folder: /blog/blogpictures/
4. Vælger fil fra skrivebordet der skal uploades og klikker på 'Send it to the server'.

Så får jeg følgende fejl på skærmen:

Using themed css files requires a header control on the page. (e.g. <head runat="server" />).

Stack Trace:

[InvalidOperationException: Using themed css files requires a header control on the page. (e.g. <head runat="server" />).]
  System.Web.UI.PageTheme.SetStyleSheet() +2457366
  System.Web.UI.Page.OnInit(EventArgs e) +8699548
  System.Web.UI.Control.InitRecursive(Control namingContainer) +333
  System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +378

Any clues?
Avatar billede Slettet bruger
10. juni 2009 - 12:11 #10
I min confic.ascx har jeg forøvrigt implementeret følgende i metoden CheckAuthentication()

if (HttpContext.Current.User.Identity.IsAuthenticated)
            return true;
        else
            return false;

Da editoren jo afvikles fra en undermappe/webapplikation, hvor man skal logge ind for at kunne arbejde, vil dette så ikke være ok, eller skal man ud i noget andet for at være 'sikker på sikkerheden'?
Avatar billede dta Nybegynder
10. juni 2009 - 12:32 #11
Using themed css files requires a header control on the page. (e.g. <head runat="server" />). Er relatedert til Themas og ikke FCK Editor.

Slå THeams fra enten på siden eller i web.config

Under aller omståndigheder skulle din egen side virke nu
Avatar billede Slettet bruger
10. juni 2009 - 12:46 #12
Ok, det du skriver med at slå themes fra forstår jeg ikke helt. Men hvis jeg forsøger at browse fra min egen side nu, så har du ret, det virker, men stadig ikke efter hensigten.

Jeg får listet indholdet af /blog/blogpictures/ hvor jeg kan se den web.config fil jeg selv har placeret der, sådan at directory browsing er tilladt for mappen.
Jeg får altså med andre ord ikke mulighed for at benytte ressource explorer fra fckeditor.

Hvis jeg fjerner web.config filen, får jeg følggende fejl når jeg forsøger at browse:

HTTP Error 403.14 - Forbidden
The Web server is configured to not list the contents of this directory.

Kan du se dillemaet? :-)
Avatar billede Slettet bruger
10. juni 2009 - 12:51 #13
På fejlsiden står forøvrigt at der forsøges at åbne mappen som anonym.

Requested URL    http://localhost:80/Blog/BlogPictures/
Physical Path    C:\Users\Thomas\Documents\09_Websites\MyWebsite\Blog\BlogPictures\
Logon Method    Anonymous
Logon User    Anonymous
Avatar billede dta Nybegynder
10. juni 2009 - 12:54 #14
Prøv at replace FCKConfig med default. Du burde på intet tidspunkt få en generisk directory listing da der bruges system.IO til at hente filerne??
Avatar billede dta Nybegynder
10. juni 2009 - 12:56 #15
Du kan ikke åben mappen som anonym da du har

if (HttpContext.Current.User.Identity.IsAuthenticated)
            return true;
        else
            return false;
Avatar billede Slettet bruger
10. juni 2009 - 13:45 #16
Jeg tror jeg mangler noget. Hvis jeg returnerer false i CheckAuthentication() og beholder min web.config i mappen /blog/blogpictures, får jeg stadig en generisk listing, og uden web.config får jeg stadig fejlen om at directory browsing ikke er slået til for den givne mappe...
Det ser ud til at der slet ikke valideres på om CheckAuthentication()

Jeg forstår ikke helt hvad du mener med at replace FCKConfic med default...
Avatar billede Slettet bruger
10. juni 2009 - 14:07 #17
Nu har jeg bare for en god ordens skyld uploaded mine ændringer til hjemmesiden på mit webhotel og her kører det en smule anderledes.

Når jeg forsøger at browse for billeder - altså ånbne ressource browseren, får jeg fejlen:

Directory Listing Denied
This Virtual Directory does not allow contents to be listed.

Jeg kan ikke helt tyde om det er et skridt i den rigtige retning, altså om den rent faktisk forsøger at åbne ressource browseren og bare mangler directory browsing enabled, eller om der er tale om samme fejl som jeg får lokalt, bare på IIS 6 i stedet for IIS 7 som kører på min Windows 7...

Altså, vil det virke hvis jeg får enabled directory browsing på denne mappe fra mit webhotels side?
Avatar billede dta Nybegynder
10. juni 2009 - 14:21 #18
Mare for at vi er enige du launcher browseren og klikker på f.eks. billed hvor du så har muligheden for at uploade et billede. Jeg forstår nemlig ikke at du får "Directory Listing Denied"
Avatar billede Slettet bruger
10. juni 2009 - 14:28 #19
Ja, altså jeg har en side hvor editoren vises med alle mulige funktioner og når jeg klikker på knappen billede, vises en dialogboks, hvor jeg har mulighed for at skrive stien og andre egenskaber såsom bredde etc., og så har jeg en browse knap.

Det er når jeg klikker på 'gennemse', og den forsøger at åbne ressource browseren, hvor man har mulighed (når det virker vil jeg tro), for at oprette nye mapper og uploade billeder.

Men i stedet for ressource browseren, får jeg så en liste, eler når dette heller ikke virker, en side hvor der står directory listing denied.

Når jeg kører det lokalt og slet ikke har ændret på noget, åbner den korrekt ressource browser, men kommer så med den tidligere omtalte xml fejl.
Når jeg specificerer path osv. i min Page_Load, virker det på den måde, at den formentlig går til den korrekte mappe /blog/blogpictures, men så får jeg de andre problemer med directory browsing eller bare en generisk liste over indholdet af mappen.
Avatar billede dta Nybegynder
11. juni 2009 - 14:37 #20
Kan ikke fremprovokere samme fejl på min løsning som du beskriver???
Det virker som om det har noget at gøre med sikkerhedssetuppet i IIS/ windows så du ikke kan bruge SYstem.IO services til at hente filer?
Avatar billede Slettet bruger
11. juni 2009 - 16:02 #21
Hej.

Ja, men jeg får også fejl på min udbyders webhotel.
Avatar billede Slettet bruger
11. juni 2009 - 20:23 #22
Jeg har nu forsøgt at starte forfra og samtidig dokumentere præcis hvad jeg har sat op.
Men det giver stadig samme resultat som på den 'rigtige' hjemmeside.

1. Opret nyt website i Visual Web Developer Express Edition

2. Kopier ASP-komponenten til mappen Bin under websitet

3. Opret reference til ASP-komponenten under websitet

4. Kopier ny fckeditor-mappe til roden af websitet.

5. <%@ Register Assembly="FredCK.FCKeditorV2" Namespace="FredCK.FCKeditorV2" TagPrefix="FCKeditorV2" %> i toppen af siden.

6. <FCKeditorV2:FCKeditor ID="FCKeditor1" runat="server"></FCKeditorV2:FCKeditor> på selve siden.

- Prøver at nå ressource browser (editoren vises korrekt på den nye side). Får fejlen:
'The server didn't reply with a proper XML data. Please check your configuration.

7. I Config.ascx ændres CheckAuthentication() til true i stedet for false.

8. I cocebehind-filen til siden med FCKEditor skrives this.FCKeditor1.ImageBrowserURL = "/blog/blogpictures/"; i Page_Load.

- Nu kommer fejlen:
HTTP Error 403.14 - Forbidden
The Web server is configured to not list the contents of this directory.

Og

Requested URL    http://localhost:80/blog/blogpictures/
Physical Path    C:\Users\Thomas\Documents\09_Websites\FCKEditorTest\blog\blogpictures\
Logon Method    Anonymous
Logon User    Anonymous

Permissions på mappen /Blog/BlogPictures/
- IUSR Read and execute
- IIS_IUSRS (Thomas-Laptop\IIS_IUSRS) Modify
- System Full Control
- Thomas-Laptop\Administrators Full Control

9. I IIS enables directory browsing for default website. IIS genstartes.

Nu har jeg adgang til mappen via 'Browse-knappen' i FCKEditor, men nu får jeg en blank side op med teksten:

localhost - /blog/blogpictures/

[To Parent Directory]


Det er mere eller mindre det samme jeg har gjort første gang, dog har jeg lavet det om en enkelt gang på den rigtige hjemmeside fordi jeg første gang havde lavet en del modifikationer som jeg til sidst ikke kunne overskue :-)

Er der noget jeg mangler???

Hvordan præcis ser din egen opsætning ud?
Avatar billede dta Nybegynder
11. juni 2009 - 22:25 #23
Jeg kan ikke se noget men prøv

FCKeditorV2:FCKeditor ID="FCKeditor1" BasePath="~/blog/blogpictures/" runat="server"></FCKeditorV2:FCKeditor>

I fckconfig.js skal du sætte
var _FileBrowserLanguage    = 'aspx' ;var _QuickUploadLanguage    = 'aspx' ;
FCKConfig.LinkBrowser = true ;
FCKConfig.ImageBrowser = true ;
FCKConfig.FlashBrowser = true ;
FCKConfig.LinkUpload = true ;
FCKConfig.ImageUpload = true ;
FCKConfig.FlashUpload = true ;
Avatar billede Slettet bruger
14. juni 2009 - 19:54 #24
Hej DTA.

Jeg har tjekket .js filen og der er alle de parametre du skriver sat til true.

Jeg har forsøgt at sætte basepath, men det giver samme fejl.

Kan jeg få dig til at beskrive dit eget setup?
Har du fx. lavet nogle referencer til .js-filerne på dine sider, som jeg mangler for at få det til at fungere?

Hvilke ændringer har du lavet i forhold til standard-settings i fckeditor filerne?
Avatar billede Slettet bruger
15. juni 2009 - 16:01 #25
Hej DTA.

Du har været til stor hjælp, selvom det stadig ikke fungerer.
Smider du et svar?
Avatar billede Slettet bruger
19. juni 2009 - 11:33 #26
Lukket
Avatar billede Slettet bruger
19. juni 2009 - 12:57 #27
Det viser sig at jeg i min web.config skulle ændre 'ImageBrowserURL' til 'UserFilesPath'.

Dette fik løst mappevisnings-problemerne, men affødte så nogle fejl vedrørende CSS.

Dette kunne så løses ved at oprette en web.config fil i roden af fckeditor mappen hvor theming var slået fra.

Så nu ser det ud til at virke - i hvert fald lokalt :-)
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
Kurser inden for grundlæggende programmering

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