Nucleus(JP)フォーラム

NucleusCMS日本語版ユーザーのためのサポートフォーラムです。疑問が生じたらまずは記事検索をご利用ください。

ログインしていません。

#1 2012-08-19 13:19:16

daiden_ina
メンバー
登録日: 2012-08-19
投稿: 5

Re: PHPのバージョンが 5.4.5 になったらサイトが真っ白

フォーラム検索して、下記の質問と、同じような状況です。(http500)
質問:PHP5.4.4でnucleus3.64が表示されない(http500)

WebプラウザのFirefoxでは画面が真っ白で、I.EやOperaでは「http500」エラー表示されます。上掲の記事の中にある全ての対策処置を講じてみましたが、改善されません。
試しに、v.4.00修正版の20個のphpファイルで、上書きアップしてみましたが、状況は変わりませんでした。

nucleu4になるまでは、対策は無いのでしょうか。

-----------------------------------
管理画面とサイト画面のエラー表示は次のとうりです。
1、管理画面では、約60行のエラー

Deprecated: Assigning the return value of new by reference is deprecated in /usr/XXX/XXXXX/public_html/nucleus/nucleus/libs/xmlrpc.inc.php on line 559

・・・中略・・・・・・・・・
(xmlrpc.inc.php on line 1122 そして1348 1355 1406 1415 から   3454
まで 約50行のエラー)

Notice: Use of undefined constant _CHARSET - assumed '_CHARSET' in /usr/XXX/XXXXX/public_html/nucleus/nucleus/libs/sql/mysql.php on line 75

Fatal error: Cannot pass parameter 2 by reference in /usr/XXX/XXXXX/public_html/nucleus/nucleus/libs/globalfunctions.php on line 357

2、サイト画面では、2行のエラー
Notice: Use of undefined constant _CHARSET - assumed '_CHARSET' in /usr/XXX/XXXXX/public_html/nucleus/nucleus/libs/sql/mysql.php on line 75

Fatal error: Cannot pass parameter 2 by reference in /usr/XXX/XXXXX/public_html/nucleus/nucleus/libs/globalfunctions.php on line 357
-------------------------------------
Nucleusのバージョン 3.64
文字コード UTF-8
サーバ Apache 2.0
PHPのバージョン 5.4.5  utf8にセット 言語は日本語 (.htaccessにて操作が可能)
MySQLのバージョン 5.1.65 utf8 言語は日本語利用可
-------------------------------------

オフライン

#2 2012-08-20 08:50:07

daiden_ina
メンバー
登録日: 2012-08-19
投稿: 5

Re: PHPのバージョンが 5.4.5 になったらサイトが真っ白

初心者でphpについても不勉強ですが、その後も試行錯誤しております。
前便で「nucleu v4.00 SVN 版」の20個PHPファイルで上書きした結果、xmlrpc.inc.phpのエラー対処として、
http://sourceforge.net/projects/phpxmlr … mlrpc/2.2/←ここからxmlrpc-3.0.0.beta.zipを入手して、xmlrpc.inc.php xmlrpcs.inc.phpを入替えてみました。そして、globalfunctions.phpは、nucleu v3.64版に戻しました。

結果、管理画面のxmlrpcのエラーは全て消え、サイト画面と同じ2箇所だけとなりました。
次に残るエラー対処として、先ず、globalfunctions.php  ine 357を調べて対処してみました。
「nucleu v4.00 SVN 版」を参考にして、下記のように書き換えました。
-------------
// login completed
//$manager->notify('PostAuthentication', array('loggedIn' => $member->isLoggedIn() ) );
$data = array('loggedIn' => $member->isLoggedIn());
$manager->notify('PostAuthentication', $data);
ticketForPlugin();
----------------------
結果、globalfunctions.phpが消えてましたが、MANAGER.phpエラーが出ました。
Fatal error: Class 'DB' not found in /usr/XXX/XXXXX/public_html/nucleus/nucleus/libs/MANAGER.php on line 597
------------
MANAGER.ph line 597 は次の内容です。
$res = DB::getResult($query);
------------
どうやら、mysql.php on line 75のエラーと関連がありそうなので、$charset = "utf8"の箇所をコメントアウトしてみました。
------------
// <add for garble measure>
        if (defined(_CHARSET)){
            $charset  = _CHARSET;
        }else{
            $resource = sql_query("show variables LIKE 'character_set_database'");
            $fetchDat = sql_fetch_assoc($resource);
            $charset  = $fetchDat['Value'];
            // in trouble of encoding,uncomment the following line.
            // $charset = "ujis";
            // $charset = "utf8";
            $charset = "utf8";
        }
        sql_set_charset_jp($charset);
------------------------------------------------
mysql.phpの結果は、変わりませんでした。どうも私の知識では対応できそうにもありません。
皆様からのご教授を願っております。

やはり、「nucleu v4.00 版」を待つことになるのでしょうか。

オフライン

#3 2012-08-20 09:04:00

shizuki
Administrator
From: 西播磨
登録日: 2006-03-23
投稿: 900
ウェブサイト

Re: PHPのバージョンが 5.4.5 になったらサイトが真っ白

4.00と3.64では、別物といっていいほど変更されていますので、まずはすべてのファイルを3.64のものに戻した状態で、どんなエラーが出ているか教えてください。

オフライン

#4 2012-08-20 19:16:28

daiden_ina
メンバー
登録日: 2012-08-19
投稿: 5

Re: PHPのバージョンが 5.4.5 になったらサイトが真っ白

先日、私の利用しているサーバーが PHPバージョン 5.4.5 になり、サイトが真っ白になりました。それまでは正常に表示されておりましたので、困惑しております。宜しく御指導の程お願いします。

全てのファイルを3.64のものに戻した状態のエラーを、次に報告します。
ただし、globalfunctions.php は、エラー表示をさせるために、$CONF['debug'] = 1; と変更しております。

4.00と3.64では、別物といっていいほど変更されていますので、まずはすべてのファイルを3.64のものに戻した状態で、どんなエラーが出ているか教えてください。

-------サイト画面の表示----------
Deprecated: Assigning the return value of new by reference is deprecated in /usr/XXX/XXXXX/public_html/nucleus/nucleus/libs/MEMBER.php on line 54

Deprecated: Assigning the return value of new by reference is deprecated in /usr/XXX/XXXXX/public_html/nucleus/nucleus/libs/MEMBER.php on line 65

Deprecated: Assigning the return value of new by reference is deprecated in /usr/XXX/XXXXX/public_html/nucleus/nucleus/libs/MANAGER.php on line 69

Deprecated: Assigning the return value of new by reference is deprecated in /usr/XXX/XXXXX/public_html/nucleus/nucleus/libs/MANAGER.php on line 145

Deprecated: Assigning the return value of new by reference is deprecated in /usr/XXX/XXXXX/public_html/nucleus/nucleus/libs/MANAGER.php on line 190

Strict Standards: Non-static method MANAGER::instance() should not be called statically in /usr/XXX/XXXXX/public_html/nucleus/nucleus/libs/globalfunctions.php on line 170

Notice: Use of undefined constant _CHARSET - assumed '_CHARSET' in /usr/XXX/XXXXX/public_html/nucleus/nucleus/libs/sql/mysql.php on line 75

Deprecated: Assigning the return value of new by reference is deprecated in /usr/XXX/XXXXX/public_html/nucleus/nucleus/libs/SKIN.php on line 171

Deprecated: Assigning the return value of new by reference is deprecated in /usr/XXX/XXXXX/public_html/nucleus/nucleus/libs/SKIN.php on line 188

Deprecated: Assigning the return value of new by reference is deprecated in /usr/XXX/XXXXX/public_html/nucleus/nucleus/libs/SKIN.php on line 189

Deprecated: Assigning the return value of new by reference is deprecated in /usr/XXX/XXXXX/public_html/nucleus/nucleus/libs/ACTIONS.php on line 736

Deprecated: Assigning the return value of new by reference is deprecated in /usr/XXX/XXXXX/public_html/nucleus/nucleus/libs/ACTIONS.php on line 737

Deprecated: Assigning the return value of new by reference is deprecated in /usr/XXX/XXXXX/public_html/nucleus/nucleus/libs/ACTIONS.php on line 743

Deprecated: Assigning the return value of new by reference is deprecated in /usr/XXX/XXXXX/public_html/nucleus/nucleus/libs/BLOG.php on line 164

Deprecated: Assigning the return value of new by reference is deprecated in /usr/XXX/XXXXX/public_html/nucleus/nucleus/libs/BLOG.php on line 165

Deprecated: Assigning the return value of new by reference is deprecated in /usr/XXX/XXXXX/public_html/nucleus/nucleus/libs/BLOG.php on line 318

Deprecated: Assigning the return value of new by reference is deprecated in /usr/XXX/XXXXX/public_html/nucleus/nucleus/libs/BLOG.php on line 459

Deprecated: Assigning the return value of new by reference is deprecated in /usr/XXX/XXXXX/public_html/nucleus/nucleus/libs/ITEMACTIONS.php on line 457

Deprecated: Assigning the return value of new by reference is deprecated in /usr/XXX/XXXXX/public_html/nucleus/nucleus/libs/ITEMACTIONS.php on line 526

Deprecated: Assigning the return value of new by reference is deprecated in /usr/XXX/XXXXX/public_html/nucleus/nucleus/libs/ITEMACTIONS.php on line 527

Deprecated: Assigning the return value of new by reference is deprecated in /usr/XXX/XXXXX/public_html/nucleus/nucleus/libs/COMMENTS.php on line 73

Deprecated: Assigning the return value of new by reference is deprecated in /usr/XXX/XXXXX/public_html/nucleus/nucleus/libs/COMMENTS.php on line 74

Deprecated: Assigning the return value of new by reference is deprecated in /usr/XXX/XXXXX/public_html/nucleus/nucleus/libs/COMMENTS.php on line 319

Deprecated: Assigning the return value of new by reference is deprecated in /usr/XXX/XXXXX/public_html/nucleus/nucleus/libs/PAGEFACTORY.php on line 138

HTTPヘッダは送信済みです ←(この行だけは、文字サイズが大で表示されている)

/usr/XXX/XXXXX/public_html/nucleus/nucleus/libs/COMMENTS.php の 74 行目ですでにページのHTTPヘッダが送出されており、Nucleusが正常に動作しなくなる可能性があります。

config.phpやランゲージファイル、その他プラグインのファイルの終わりに、余分な改行や文字列がないか確認してもういちどアクセスしてみてください。

根本的な解決をせずにこのメッセージを表示させなくするには、globalfunctions.phpの冒頭の$CONF['alertOnHeadersSent']を0に設定します。
-------サイト画面の表示終わり----------
管理画面のエラー内容は、長くなるので、次便にいたします
なお、使用中の plugins は、次のとうりです。
NP_AddSpamCheckEvent.php
NP_Blacklist.php
NP_Calendar.php
NP_Captcha.php
NP_Counter.php
NP_CustomURL.php
NP_LatestWritebacks.php
NP_MultipleCategories.php
NP_NewAccount.php
NP_Ping.php
NP_SecurityEnforcer.php
NP_ShowBlogs.php
NP_ShowBlogs.php
NP_Text.php

オフライン

#5 2012-08-21 10:11:47

daiden_ina
メンバー
登録日: 2012-08-19
投稿: 5

Re: PHPのバージョンが 5.4.5 になったらサイトが真っ白

全てのファイルを3.64のものに戻した状態で、その後も試行錯誤していましたが、管理画面とサイト画面が表示されました。
どうやら、原因は plugins にあるようです。前に一度試してみましたが変化ないので諦めてしまったのが、早とちりでした。
実はPHPの文字コード等の変更設定を実施する前の処置でした。今回は、.htaccess で、PHPのLocal Valueを変えてから実行しました。
その結果、画面が表示された次第です。

次のように、先ず全てのplugins を無効にしてみました。(google で検索)
1、 /nucleus/nucleus/plugins フォルダをリネームして無効化。
2、 新たに、空の/nucleus/nucleus/plugins を作成。

次は、plugins の点検作業を予定し、下記の手順で作業を進めてみようと、思っています。
管理画面のエラーでは次の plugins が出ていますので、これらを取り敢えず無効化してみる。
1、 Fatal error: Call-time pass-by-reference has been removed in NP_MultipleCategories.php on line 663
2、 Deprecated: Assigning the return value of new by reference is deprecated in NP_CustomURL.php on line 390 と、 on line 344

これらのプラグインを、有効に使うための方法は見当もつきませんので、宜しくご指導下さい。

オフライン

#6 2012-08-21 10:38:07

shizuki
Administrator
From: 西播磨
登録日: 2006-03-23
投稿: 900
ウェブサイト

Re: PHPのバージョンが 5.4.5 になったらサイトが真っ白

Fatal error: Call-time pass-by-reference has been removed in NP_MultipleCategories.php on line 663

表示されない原因はこれですね
http://japan.nucleuscms.org/bb/viewtopic.php?f=2&t=5904
こっちのスレッドでNP_MultipleCategories.phpの修正方法が書いてあるのでそちらを参照してください
NP_CustomURL.phpは、エラーの出ている行の

&= new

となっている部分の&を消してやればエラーは消えるはずです

オフライン

#7 2012-08-21 12:15:34

daiden_ina
メンバー
登録日: 2012-08-19
投稿: 5

Re: PHPのバージョンが 5.4.5 になったらサイトが真っ白

ご指導を有難う御座いました。画面が表示されました。元どうりに全て回復しました
早速、ご指導のとうりに実行しました結果、元通りに回復しました。
------------------
先刻まで作業しておりました。plugins でエラーの出ている「NP_MultipleCategories」と「NP_CustomURL」を除く plugins を、有効にしたら画面が表示された、というところで、PHPコードの修正について、いろいろと調べていたところでした。
作業が頓挫しておりましたところ、タイミングのよいご指導で助かりました。改めてお礼申し上げます。有難う御座いました!

オフライン

Board footer