Search code examples
asp.netckfinder

ASP.NET Connector Path for CKFinder v3


I'm having a difficult time trying to figure out the connector path for the ASP.NET version of CKFinder v3.3 and am hoping someone could point me in the right direction.

If I upload the "ckfinder" directory directly to the root of my website without changing the ckfinderRoute key in the "Web.config" file from its initial value of /connector then everything works fine (using the samples to test), despite the fact that there is no "/ckfinder/connector" directory.

However, if I upload the files to a different subdirectory (e.g, "/path/to/ckf/"), changing the value of the ckfinderRoute key to /path/to/ckf/connector and editing the sample files to set the connectorPath to be the same, I'm getting a 404 on that path when trying to load the sample files.

Downloading the PHP version for comparison as the documentation provides the name of the PHP connector file, I can find that file at "/ckfinder/core/connector/php/connector.php" but can find no corresponding path for the ASP.NET version.

Note: Up until now, I have been working with the ASP version of CKFinder but, as that is no longer being maintained, I'm upgrading to ASP.NET however my knowledge of .NET is extremely limited.


Solution

  • The ckfinderRoute in CKFinder 3.3 ASP.NET connector is not a physical file path, it's a virtual path to the CKFinder connector application. If you decided to change the default ckfinderRoute, then you must also appropriately change the connectorPath in CKFinder JavaScript client. Please note that default connector path may change if you install the application in a virtual directory - in this case the default connectorPath in JavaScript must be altered too.

    Let's have a look at two examples:

    Default (installation in <server_root>/ckfinder)

    • App virtual directory: /ckfinder (if you installed CKFinder from ZIP by clicking Convert to Application, the application folder is used as a virtual directory).
    • ckfinderRoute by default is set to /connector.
    • connectorPath is /ckfinder/connector, which is just concatenation of application virtual directory and ckfinderRoute - this is the default connectorPath used by CKFinder JavaScript client.

    Your example (installation in <server_root>/path/to/ckf)

    • App virtual directory: /path/to/ckf.
    • Changing ckfinderRoute is not necessary, let's keep the default /connector.
    • connectorPath is /path/to/ckf/connector - as above it's just a concatenation of virtual path and ckfinderRoute, and this needs to be set as connectorPath in CKFinder JavaScript client.