SOY CMS ファイルマネージャーの画像のパスについて

インストール後の運用中に生じた質問などはこちら。
管理画面の操作方法でわからないところやTipsなども

SOY CMS ファイルマネージャーの画像のパスについて

投稿記事by matsu on 2019年4月26日(金) 21:47

お世話になっております。
SOY CMSを利用し、さくらインターネットのスタンダードプランで複数のサイトを作成し、
個々に独自ドメインを割り当てています。サイトのルート設定は使っておりません。

https://www.a.com → https://○○.sakura.ne.jp/サイトID(A)/
https://www.b.com → https://○○.sakura.ne.jp/サイトID(B)/
https://www.c.com → https://○○.sakura.ne.jp/サイトID(C)/

各独自ドメインにアクセスをすると、SOY CMSで作成されたサイトが正常に表示され、
ページ間のリンク、アイコンなどの画像は表示されるのですが、
ファイルマネージャーを使ってアップロードされた画像がリンク切れになってしまい、画像が表示されません。
ファイルマネージャーを開き画像を開くと https://www.a.com/サイトID(A)/files/aa.jpg
となり、ドメインの後ろにサイトIDが付加されてしまいます。

サイトIDが付加されなくする方法を教えてください。
よろしくお願いいたします。
matsu
 
記事: 181
登録日時: 2012年12月30日(日) 14:17

Re: SOY CMS ファイルマネージャーの画像のパスについて

投稿記事by inunosinsi on 2019年4月28日(日) 05:43

検証環境を設けるのが難しいので、確証はありませんが、

/soycms/js/elfinder/php/connector.phpの123行目付近に

コード: 全て選択
//URLで末尾にサイトIDが無い場合は付与する。ダメな対応かもしれない
if(!strpos($url, "/" . $_GET["site_id"] . "/")){
   $url = rtrim($url, "/") . "/" . $_GET["site_id"] . "/";
}


上記のコードがあります。
このコードを
コード: 全て選択
//URLで末尾にサイトIDが無い場合は付与する。ダメな対応かもしれない
//if(!strpos($url, "/" . $_GET["site_id"] . "/")){
//   $url = rtrim($url, "/") . "/" . $_GET["site_id"] . "/";
//}

のようにコメントアウトするとサイトIDが付与されなくなるかもしれません。

一つのサイトでも、PHPファイル側で行った設定内容がわかれば、汎用化できるかもしれません。
大阪でフリーのプログラマをしています。
以前はSOY CMSの開発元で働いていました。

SOY ShopのプラグインやSOY Appの開発のサポートをしています。
http://saitodev.co/soycms(SOY CMSのマニュアルを作成しています)
開発実績等

最近はSOY Shopを業務アプリとして使用できないか?と模索しています。
SOY Shopで管理画面のみ使用モードを追加しました - saitodev.co

株式会社京都農販(SOY Shopのサイト)
株式会社コトブキ園(SOY Shop)
inunosinsi
 
記事: 898
登録日時: 2008年6月12日(木) 20:48

Re: SOY CMS ファイルマネージャーの画像のパスについて

投稿記事by matsu on 2019年4月28日(日) 23:43

教えていただいた通りに指定された箇所をコメントアウトしましたら、解決いたしました。
ありがとうございました。
matsu
 
記事: 181
登録日時: 2012年12月30日(日) 14:17


Return to 運用・操作方法

オンラインデータ

このフォーラムを閲覧中のユーザー: なし & ゲスト[1人]