メインWebサイト(/__admin
には独自のアプリケーションがあります)から別のASP .Netアプリケーションで実行されているCMSでCKFinder 3.3を使用しています。このWebサイトはWebFormsアプリケーションです。CKFinderがIISサブアプリケーションにインストールされている場合、カスタム構成のコネクタを使用していません
問題はCKFinderコネクタが私がセットアップしたものではなく/ckfinder/connector
を指していることです。明らかに、このパスはルートアプリケーション内の何にも設定されていないため、IIS 404応答が返されます。
web.configファイル
<appSettings>
<add key="ckfinderRoute" value="/connector" />
とCKEditorバージョンは、Visual Studioのホスト(Ctrlキー+ F5)で実行するときと同じセットアップが正常に動作している
CKEDITOR.replace('ctl00_cphMain_fvItem_tbContent_Input',
{
filebrowserBrowseUrl: '/__admin/CKFinderScripts/ckfinder.html?=635999758837233543',
filebrowserImageBrowseUrl: '/__admin/CKFinderScripts/ckfinder.html?type=Images&a=635999758837233543',
filebrowserUploadUrl: '/__admin/connector?command=QuickUpload&type=Files',
filebrowserImageUploadUrl: '/__admin/connector?command=QuickUpload&type=Images'
});
CKEDITOR.timestamp='635999758837233543';
のように使用されます。 MVCアプリケーションでは、同じ設定で、これが正しく動作していることに言及しておきます。 CKFinderは、OWIN Startupクラスを介して、web.configの独自のセクションで構成され、コードでは構成されません。私はそれを試みたときに(Map(route, connectorSetup)
)私は同じ結果を得た。
一時修正として、次の書き換えルールをウェブサイトルートに追加しました。
<rule name="connector">
<match url="^ckfinder/connector"/>
<action type="Rewrite" url="/__admin/connector"/>
</rule>
は編集:
私はどのように私のセットアップコネクタを変更しました。 Startupクラスでこれをやっているので、ckfinderRouteの設定方法を制御できます。それは外観のようです
public void Configuration(IAppBuilder builder)
{
LoggerManager.LoggerAdapterFactory = new NLogLoggerAdapterFactory();
RegisterFileSystems();
var route = ConfigurationManager.AppSettings["ckfinderRoute"];
builder.Map(route, SetupConnector);
}
SetupConnectorメソッドはweb.configから設定を読み込み、認証を追加しています。ここにコードを示すのは無関係だと思います。
私はあまりにも
<package id="CKSource.CKFinder" version="3.3.0" targetFramework="net461" />
<package id="CKSource.CKFinder.Connector.Config" version="3.3.0" targetFramework="net461" />
<package id="CKSource.CKFinder.Connector.Core" version="3.3.0" targetFramework="net461" />
<package id="CKSource.CKFinder.Connector.Host.Owin" version="3.3.0" targetFramework="net461" />
<package id="CKSource.CKFinder.Connector.KeyValue.EntityFramework" version="3.3.0" targetFramework="net461" />
<package id="CKSource.CKFinder.Connector.Logs.NLog" version="3.3.0" targetFramework="net461" />
<package id="CKSource.FileSystem" version="1.0.0" targetFramework="net461" />
<package id="CKSource.FileSystem.Amazon" version="1.0.0" targetFramework="net461" />
<package id="CKSource.FileSystem.Local" version="1.0.0" targetFramework="net461" />
サンプルWebAppと統合しているのですか、NuGetパッケージを使用していますか?ルートマッピングではこれら2つの間に若干の違いがあります。両方の設定をミックスしているようです。 – kfazi
レガシーアプリケーションでNuGetを使用する。 –
基本的には/__admin/CKFinderScripts/ckfinder.htmlページで/ admin/connectorの代わりに/ ckfinder/connectorを使用しています –