PHP5.6系のサーバでファイルマネージャが開かない件を修正しました

バグかなと思ったらこちらへ。

PHP5.6系のサーバでファイルマネージャが開かない件を修正しました

投稿記事by inunosinsi on 2016年3月23日(水) 23:46

PHP5.6系のサーバにSOY CMSをインストール→サイトの作成を行い、
ファイルマネージャを開くと、
無効なバックエンドコンフィグレーションです
JSONデータではありません

というエラーが出て、フォルダが表示されない件を修正しました。
添付ファイル
common.zip
(4.35 KiB)
SOY CMSの操作に関する質問は下記のページのフォームで受け付けています。
https://saitodev.co/soycms/inquiry

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

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

Re: PHP5.6系のサーバでファイルマネージャが開かない件を修正しました

投稿記事by kamo on 2016年9月28日(水) 21:14

kamoです。
このフォーラムはいつも拝見しています。
inunosinsi 様のこの記述とおなじ現象がX-server PHP5.6でも起こっており、
ご用意頂いたファイルを差し替えたら、初期のエラーがなくなりました。
初期管理画面から次にログイン画面に移動したとき、別のエラーが発生。
-------------
Strict Standards: Declaration of CMSAdminPageController::onNotFound() should be compatible with SOY2PageController::onNotFound($path = NULL, $args = NULL, $classPath = NULL) in /home/user-name/domain.xsrv.jp/public_html/soy1812/common/base/CMSAdminPageController.class.php on line 0
-----これを無視してサイト作成へ進み、エラーはそのままですがサイトも作成でき、ページ作成
もエラーですが作成しました。
ただ、すべてのページや管理画面に上記エラーが表示されたままです。
soy1.8.12-php5.6.png
エラー表示されたページ
soy1.8.12-php5.6.png (6.56 KiB)

ファイルの差し替えは1.8.12にここの修正ファイルを入れ替えたのみです。
お時間のあるときにエラーの原因をご教授頂きたく
よろしくお願い申し上げます。
kamo
 
記事: 126
登録日時: 2009年3月25日(水) 15:44

Re: PHP5.6系のサーバでファイルマネージャが開かない件を修正しました

投稿記事by inunosinsi on 2016年9月29日(木) 04:55

今回のエラーはSOY CMS内の書き方が古くて起きているエラーです。

修正方法ですが、
/common/base/CMSAdminPageController.class.php

/common/site_include/CMSPageController.class.php
の両方のファイルで、

コード: 全て選択
function onNotFound(){

このコードを

コード: 全て選択
function onNotFound($path = null, $args = null, $classPath = null){


この様に変更します。

もしかしたら、
/common/base/CMSAdminPageController.class.phpの12行目にある

コード: 全て選択
parent::onNotFound();


コード: 全て選択
parent::onNotFound(null, null, null);

にしておく必要があるかもしれません


PHP5.6以降はいろいろと仕様の変更があって、
PHPの書き方が厳しくなっています。

公式のパッケージではやく反映して欲しいですね。
SOY CMSの操作に関する質問は下記のページのフォームで受け付けています。
https://saitodev.co/soycms/inquiry

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

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

Re: PHP5.6系のサーバでファイルマネージャが開かない件を修正しました

投稿記事by kamo on 2016年9月29日(木) 10:21

inunosinsi様
ありがとうございました!
エラーが消えました。
これで5.6での運用の第一歩が踏み出せそうです。

今回はX-serverでテストしているのですが、現在X-serverで運用中のVersion1.8.12は
5.6ではエラーとなり先に、時間もないため5.5に下げて運用しています。

ただ別サーバNTTのBizメール&ウェブ ビジネスがPHP5.5の提供を終了し
2016年10月よりPHP5.6の提供を開始すると連絡が入り、困っていました。

しばらくは5.5や5.4も使えるとのことですが、来年には
古いVersionは提供を中止すると告知がきています。

スルーしていたPHP5.6での運用をやはり試す必要があったためフォーラムにて
ご質問させて頂きました。

PHPは、ほとんど知識がないので、とても助かりました。
このフォーラムの中で公式サイトでのVersionアップ対応をお願いしたところ
「8月中のリリースを予定」という回答でしたが、どうも時間がかかっているようなので、
フォーラムに上げっている投稿をチェックしつつ、最低限必要な修正部分だけ
入れ替えるようにメモを取ったりしています。

今回のエラーが消えたので、引き続き以下4つはファイルの差し替えを完了しました。

1.--3月23日
「SOY CMSでページを作成する際に一瞬表示されるエラーを修正」

2.--6月11日
「ブログリンクの不具合・・・・」これも前からできなくなっていたので
修正。

3.--6月24日
「ソーシャルボタン設置プラグインボタンをクリックURL不具合修正」

4.--6月30日
「カスタムエイリアス設定時のエラー修正」

---ここまで対応したのですが

6月12日に5.6対策としてinunosinsi様が
「PHP5.6の環境で、サイトを作成できない不具合修正」

こちらについて、現在X-serverの環境ではサイト作成はできるのですが
別のサーバー環境でエラーとなる可能性がある?なら
これも差し替えたほうがよいでしょうか?

また、5月21日の
「ブログのページ生成設定で404になる条件がある不具合を修正」
で詳細記事ブログを見ると
「soycms_1.8.12p7.4以降のバージョンから使用可能」とありますが
これはPHP7用ということなので今回の5.6でのファイル修正には
適用外という判断でよいでしょか

お忙しい中、ご回答頂いた上に更にご面倒をお掛けいたしますが
お時間のあるときに、2点についてご意見とアドバイスを
頂けたらと思います。

どうぞ、よろしくお願い申し上げます。
kamo
 
記事: 126
登録日時: 2009年3月25日(水) 15:44

Re: PHP5.6系のサーバでファイルマネージャが開かない件を修正しました

投稿記事by inunosinsi on 2016年9月29日(木) 12:04

「soycms_1.8.12p7.4以降のバージョンから使用可能」とありますが
これはPHP7用ということなので今回の5.6でのファイル修正には
適用外という判断でよいでしょか

PHP7とPHP5.6の対応はほぼ同じで、
今のところ、今までPHP7対応として行ってきたものはPHP5.5以前でも一応動く形で修正していて、実際のサイトでも利用していただいています。

https://github.com/inunosinsi/soycms/tree/master/package/soycms
私が個人的に進めている改修のパッケージで今までの追加と修正はすべて行っていますので、
こちらを使用してみてはいかがでしょうか?

一応、エックスサーバ向けの注意事項も追加しています。

もし、何か不具合等ございましたら、
プライベートメッセージでも良いのでご連絡ください。
SOY CMSの操作に関する質問は下記のページのフォームで受け付けています。
https://saitodev.co/soycms/inquiry

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

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

Re: PHP5.6系のサーバでファイルマネージャが開かない件を修正しました

投稿記事by kamo on 2016年9月29日(木) 22:28

inunosinsi様
ありがとうございます。
soycms_1.8.12p7.24_sqlite.zipを試しています。
インストールとテスト用にサイトを作成して、ページを1つ追加した程度ですが
すこしX-server X-10プラン環境のPHP Version: 5.6.22で表示が気になる部分がありましたので
記載いたします。
--------X-server X-10プラン環境PHP Version: 5.6.22
Version: 1.8.12p7.24
SOYCMS更新情報プラグインがリンクなし、表示も一部だけ表示。
パスワードリマインダーの設定でテスト送信文字化けする
ファイルマネージャーでphpが見えている
----という状態です。
X-server-php5.6にsoy.1.8.12p7.24.png
X-server-php5.6にsoy.1.8.12p7.24.png (28.08 KiB)


同じサーバー環境に1.8.12の最小限修正したものをテストすると、上記の症状は発生しませんでした。

さくらサーバースタンダードでもテストしてみました。
----------------さくらサーバー環境
Version: 1.8.12p7.11
さくらサーバーでPHP 5.6.24
SOYCMS更新情報プラグインはリンク付で表示OK。
パスワードリマインダーの設定でテスト送信正しく送信できる
ファイルマネージャーはphpが見えている状態

----------------さくらサーバー環境
Version: 1.8.12p7.24
SOYCMS更新情報プラグインはリンク付で表示OK
パスワードリマインダーの設定でテスト送信正しく送信できる
ファイルマネージャーはphpが見えている状態

最後にCPIのシェアードプランACE01の2011仕様も少しだけ試してみました。
これらは確かサーバーのhtaccessかで設定が必要だった?ようですが
とりあえずアップして解凍初期ログインしてみたらなにやらエラーが出ました。
初期管理者で「設定」をクリックしたら表示されたエラー。
Strict Standards: Only variables should be passed by reference in /usr/home/サーバID/html/soy1812p724/common/logic/admin/Site/SiteCreateLogic.class.php on line 169

Strict Standards: Only variables should be passed by reference in /usr/home/サーバID/html/soy1812p724/common/logic/admin/Site/SiteCreateLogic.class.php on line 216

Warning: Cannot modify header information - headers already sent by (output started at /usr/home/aa203omeo3/html/soy1812p724/common/logic/admin/Site/SiteCreateLogic.class.php:169) in /usr/home/aa203omeo3/html/soy1812p724/common/lib/soy2_build.php on line 311
でも、ブラウザの戻るをクリックしたら次の画面へ進めました。
パスワードリマインダーの設定をしてテスト送信も文字化けせずOK。
SOYCMS更新情報プラグインはリンク付で表示OK
ファイルマネージャーはphpが見えている状態

ページ確認をしてみると403エラーでした。
Forbidden
You don't have permission to access /www/ on this server.

ただこのサーバーはphp5.5ですので、
今回の5.6用には設定変更が必要なので5.6用としての比較にならないですが・・・。

今回はNTTのサーバーで動けばよいので10月になって仕様が変わったら、
またテストしてみます。
ありがとうございました。
kamo
 
記事: 126
登録日時: 2009年3月25日(水) 15:44

Re: PHP5.6系のサーバでファイルマネージャが開かない件を修正しました

投稿記事by inunosinsi on 2016年9月30日(金) 06:00

お試しいただきありがとうございます。

SOYCMS更新情報プラグインがリンクなし、表示も一部だけ表示。

更新情報プラグインの詳細画面でキャッシュを削除してみたらどうですか?
たまたま情報がとれず、とれなかった情報でキャッシュ化されている可能性があります。
これは以前のバージョンからありました

パスワードリマインダーの設定でテスト送信文字化けする

文字コードの設定を変更してみたらどうですか?

ファイルマネージャーでphpが見えている

表示されますが、アップロードが不可という状態になっています。
アップロード不可=ファイルの更新もできない

Strict Standards: Only variables should be passed by reference in /usr/home/サーバID/html/soy1812p724/common/logic/admin/Site/SiteCreateLogic.class.php on line 169
Strict Standards: Only variables should be passed by reference in /usr/home/サーバID/html/soy1812p724/common/logic/admin/Site/SiteCreateLogic.class.php on line 216
Warning: Cannot modify header information - headers already sent by (output started at /usr/home/aa203omeo3/html/soy1812p724/common/logic/admin/Site/SiteCreateLogic.class.php:169) in /usr/home/aa203omeo3/html/soy1812p724/common/lib/soy2_build.php on line 311


エラーの内容に従って修正してみました
添付ファイル
common.zip
(5.75 KiB)
SOY CMSの操作に関する質問は下記のページのフォームで受け付けています。
https://saitodev.co/soycms/inquiry

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

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

Re: PHP5.6系のサーバでファイルマネージャが開かない件を修正しました

投稿記事by kamo on 2016年9月30日(金) 23:47

inunosinsi 様
修正ファイルまでアップ頂きありがとうごうございます。
kamoです。
----------------
更新情報プラグインの詳細画面でキャッシュを削除してみたらどうですか?
-----
何回かやってみたのですが、直らず、でも今度はブラウザをIEとchromeに変えて
最終的にchromeでファイルDBの更新をクリックして、さらにキャッシュのクリアを
したら、直りました!

また文字化けの方はphp.iniでの設定をUTF-8に手直ししたら直りました。
encorde.png
encorde.png (56.25 KiB)

ファイルマネージャーでphpが見えている件も
「アップロードが不可という状態」とはそこまで気付きませんでした。
---------------
CPIのエラー対応ファイルですが、差し替えしたらエラーが無くなりました。
5.5でちゃんと動くようになりました。
せっかくなので5.6のPHPを上げてみたら、
テスト用にサンプルページのおまめ商事のファイルしか入っていないのですが
こちらも問題なく見えています。
CPI-ACE01_SOY1.8.12p7.24.png
CPI-ACE01_SOY1.8.12p7.24.png (32.8 KiB)

残念なことに利用サーバーはPHP7にはまだ対応できていないため
このテストはできませんでした。

次回はご準備頂いたこのプログラムでNTTのサーバーでも
確認してみたいと思っています。
本当にありがとうございました。
kamo
 
記事: 126
登録日時: 2009年3月25日(水) 15:44

Re: PHP5.6系のサーバでファイルマネージャが開かない件を修正しました

投稿記事by KAKI on 2018年4月06日(金) 00:58

古い記事にコメント失礼します。
version: 3.0.1p57 Mysql php5.5のサーバーで同じエラーがでています。
1.8の修正ファイルのようですが、3.0でも利用できますでしょうか?

Strict Standards: Only variables should be passed by reference in /usr/home/サーバID/html/soy1812p724/common/logic/admin/Site/SiteCreateLogic.class.php on line 169
Strict Standards: Only variables should be passed by reference in /usr/home/サーバID/html/soy1812p724/common/logic/admin/Site/SiteCreateLogic.class.php on line 216
Warning: Cannot modify header information - headers already sent by (output started at /usr/home/aa203omeo3/html/soy1812p724/common/logic/admin/Site/SiteCreateLogic.class.php:169) in /usr/home/aa203omeo3/html/soy1812p724/common/lib/soy2_build.php on line 311


エラーの内容に従って修正してみました[/quote]
KAKI
 
記事: 22
登録日時: 2016年10月28日(金) 15:34

Re: PHP5.6系のサーバでファイルマネージャが開かない件を修正しました

投稿記事by inunosinsi on 2018年4月06日(金) 14:38

3.0.1p57の後の修正したファイルになります。
こちらをお試しください。
添付ファイル
common.zip
(6.14 KiB)
SOY CMSの操作に関する質問は下記のページのフォームで受け付けています。
https://saitodev.co/soycms/inquiry

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

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

次へ

Return to バグ報告

オンラインデータ

このフォーラムを閲覧中のユーザー: Majestic-12 [Bot] & ゲスト[5人]

cron