ページへ戻る

− Links

 印刷 

質問する前に読むと参考になるかもしれないページ :: Xoops Users Group Japan

xpwiki:質問する前に読むと参考になるかもしれないページ

ページ内コンテンツ
  • 質問する前に確認してください
    • インストールに失敗する or 正常に表示されない(画面が真っ白になる、エラーが表示される ,etc.)
      • ファイルをアップロードし直してみる
      • アップロードし忘れているファイルはないか?
      • サーバのトラブルを疑ってみる
        • サーバが正常かどうかの確認の仕方
      • .htaccessの設定を見直してみる
      • PHPファイルのパーミッションを変更してみたらどうか?
      • PHPのmemory limitを確認
        • memory limitの確認の仕方
        • memory limitの上げ方
      • エラーを表示させてみる
    • 文字化けしている
      • php.ini、もしくは.htaccessで指定している文字コードとXOOPSの使用言語が違っていないか?
      • XOOPSの使用言語とMySQLにあるデータの文字コードが一致しているか
        • MySQLにあるデータの文字コードの確認の仕方
      • ひらがなや漢字などのマルチバイト文字をファイルに直接書き込んでないか
      • インポートしたsqlファイルの中身は正常だったか
    • ファイル(ブロック)の中身を変更しているのにサーバ上で反映されない
      • themes/ディレクトリからの自動アップデートを有効にする は「はい」になっているか
      • キャッシュフォルダの中身を確認する
      • カスタマイズしたファイルとアップロードしたファイルが別のものという可能性は?
      • 別のブラウザでアクセスしてみたらどうか?
    • サーバ移転(ローカル環境をアップロードした場合を含む)時にトラブルが起きた
      • mod_rewriteの設定を確認する
      • キャッシュをすべて削除してみる
      • 設定ファイルに前のサーバのパスが残されていないか?
      • XOOPS以外の問題はないか?
    • きっかけに心当たりは?
    • ここやGoogleなどで検索してみる
      • 検索のコツ
        • 画面にエラー文が表示されている場合
        • エラー文などはないが、おかしなことになっている場合
  • 質問する場合の注意点
    • 質問用テンプレート
    • 環境と問題をできるだけ詳しく書きましょう
      • 問題の具体的な書き方
    • 解決しようとして試したことはすべて書きましょう
    • 最終目的があれば書き添えましょう
    • 可能であれば問題が発生しているサイトのURLを教えてください
    • 自己解決したらその解決方法を教えてください

質問する前に確認してください anchor.png[1]

 昨日まで正常に動作していたサイトが突然真っ白になったり、マニュアルに書かれている通りに設定しているのにうまくいかなかったり、他にもいろいろな理由で質問をされようとしているのだと思います。まずは気を落ち着かせてこのページを読んでみてください。もしかすると、以下のいずれかを確認するだけで問題が解決するかもしれません。該当するものがないか確認してみてください。

Page Top

インストールに失敗する or 正常に表示されない(画面が真っ白になる、エラーが表示される ,etc.) anchor.png[2]

Page Top

ファイルをアップロードし直してみる anchor.png[3]

 正常にサーバにアップロードできているように見えても、ファイルの中身が壊れていたり、ファイルが空っぽになっていたりすることが間々あります。XOOPSはファイル数がとても多いのでわりとこのトラブルに見舞われます。はがきを何万枚も出せば一通ぐらいは郵便事故で配達されないものもあるかも、というのと同じです。再度、アップロードを試してみましょう。

Page Top

アップロードし忘れているファイルはないか? anchor.png[4]

 モジュールの場合、modulesフォルダの中身以外にもアップロードするものがあるかもしれません(たとえばclassフォルダの中にあるsmartyファイルや、preloadフォルダのpreloadファイルなど)。D3モジュールであればxoops_trust_pathフォルダの中身のアップロードも必要です。modulesフォルダだけに囚われず、他にないか確認してください。

Page Top

サーバのトラブルを疑ってみる anchor.png[5]

 XOOPSには一切問題がなく、サーバに問題が発生しているのかもしれません。俗にいわれる「サーバが落ちている」という現象です。レンタルサーバのサイトで障害のアナウンス、あるいはメンテナンスのためにサーバ機能を一時ストップするというお知らせが出ていないか確認してみましょう。また、数分程度つながらなくなったといった程度の障害の場合、アナウンスを出さないことはよくあります。問題を確認したあと、一時間程度は様子を見てみましょう。

Page Top
サーバが正常かどうかの確認の仕方 anchor.png[6]

 Windowsをお使いの場合はスタートボタンから辿って「コマンドプロンプト」というプログラムを起動し、

ping example.com

 と(example.comのところにはXOOPSを置いているサーバのドメイン名を入れてください)入力してエンターキーをクリックしてください。応答という項目が四つ並びますが、どれか一つでも応答がありませんと表示されればサーバは不安定な状態です。

Page Top

.htaccessの設定を見直してみる anchor.png[7]

 クローラーなど特定のなにかのアクセスを遮断するために、そういった設定を.htaccessに書き込みませんでしたか? その設定の記述方法に問題があり、ターゲットよりも広範囲に渡って影響が出ているのかもしれません。もし心当たりがあるなら、その記述を削除して再度表示を確認してみてください。

Page Top

PHPファイルのパーミッションを変更してみたらどうか? anchor.png[8]

 一般的なFTPクライアントソフト(FFFTPなど)でサーバにアップロードすると、PHPファィルのパーミッションは大抵644になります。お使いのサーバはこのパーミッションでPHPが動作しますか? レンタルサーバのサイトにあるFAQなどで確認してみてください。

Page Top

PHPのmemory limitを確認 anchor.png[9]

 本体、モジュールのインストールに失敗する場合は、レンタルサーバ会社に問い合わせるか、phpinfo()でPHPのmemory limitの数値を確認してみましょう。8MBだったら32MB~128MB辺りに上げてください。

Page Top
memory limitの確認の仕方 anchor.png[10]
<?php phpinfo();

 上記のコードをinfo.phpなどの名前で保存し、サーバにアップロードしてブラウザで直接アクセスしてみてください。memory limitの項目の数字を確認したら削除しておきましょう。

Page Top
memory limitの上げ方 anchor.png[11]
php_value memory_limit 32M

 というコードを.htaccessというファイル名で保存して、XOOPSのmainfile.phpがあるフォルダにアップロードするか、既存の.htaccessがある場合はダウンロードして上記のコードを適当な所に追記し、アップロードしてください。数字は任意です。

Page Top

エラーを表示させてみる anchor.png[12]

 管理画面の互換モジュール→全般設定にある「デバッグモードを有効にする」がいいえになっていたら、これは「はい」に変更し、問題が発生しているページに再度アクセスしてみてください。エラー文が表示されることがあります。このエラー文は簡単にいうと「○○というファイルの△△行に書かれている命令が××の理由のために実行できません」ということが書かれています。心当たりがあれば修正してみましょう。

Page Top

文字化けしている anchor.png[13]

Page Top

php.ini、もしくは.htaccessで指定している文字コードとXOOPSの使用言語が違っていないか? anchor.png[14]

 たとえばmbstring.internal_encodingでの指定がEUC-JPなのにXOOPSの使用言語がja_utf8だと文字化けします。この二つは一致させましょう。

Page Top

XOOPSの使用言語とMySQLにあるデータの文字コードが一致しているか anchor.png[15]

 なんらかの原因により、この二つの文字コードが不一致だと文字化けします(たとえばXOOPSで設定している使用言語はjapanese→EUC-JPなのに、データベースの文字コードはUTF-8など)。この場合、データベースの文字コードにXOOPSの文字コードを合わせるやり方が簡単です。管理画面の全般設定→使用言語で切り替えてください。当然、管理画面も文字化けしているはずですが、使用言語はアルファベットで記載されているので読めるはずです。切り替えたらcacheフォルダとtemplates_cフォルダにあるファイルはすべて削除してください。

Page Top
MySQLにあるデータの文字コードの確認の仕方 anchor.png[16]

 phpMyAdminを使えれば、そこからXOOPSのデータが入っているデータベースにアクセスし、「照合順序」という項目を確認してください。

mysql.png

Page Top

ひらがなや漢字などのマルチバイト文字をファイルに直接書き込んでないか anchor.png[17]

 マルチバイト文字を書き込んだファイルの文字コードとXOOPSで設定している使用言語の文字コードがあっていない場合も文字化けします。日本語をファイルに直接書くときは、必ずXOOPSの文字コードに合わせて保存(XOOPSで設定している使用言語がja_utf8ならファイルもUTF-8に)してください。

Page Top

インポートしたsqlファイルの中身は正常だったか anchor.png[18]

 サーバ移転をきっかけとして文字化けした場合は、前のサーバのデータベースからエクスポートしたsqlファイルの中身をエディタで開いてみてください。正常に読み込めますか? ここが文字化けしているとどうしようもありません。よくあるパターンとして、前のサーバのデータベースでlatin1で処理されていて、出力は問題ないけど、エクスポートで化けてしまうというのがあります。

Page Top

ファイル(ブロック)の中身を変更しているのにサーバ上で反映されない anchor.png[19]

Page Top

themes/ディレクトリからの自動アップデートを有効にする は「はい」になっているか anchor.png[20]

 管理画面の互換モジュール→全般設定にある「themes/ディレクトリからの自動アップデートを有効にする」という項目は「はい」になっていますか? 初期設定では「いいえ」になっています。

Page Top

キャッシュフォルダの中身を確認する anchor.png[21]

 cacheフォルダにあるファイルをすべて削除してみましょう。キャッシュはとても強力です。存在する限り、当該ファイルの表示は変わりません。

Page Top

カスタマイズしたファイルとアップロードしたファイルが別のものという可能性は? anchor.png[22]

 ローカルでバックアップ用とカスタマイズ用にファイルを分けていて、バックアップ用の同名ファイルをアップロードしてしまっているという可能性はありませんか?

Page Top

別のブラウザでアクセスしてみたらどうか? anchor.png[23]

 FirefoxやGoogle Chromeを使っている場合、広告除去系のプラグインが邪魔をしている可能性があります。これらのプラグインがインストールされていないブラウザがあれば、それを使って閲覧してみてください。

Page Top

サーバ移転(ローカル環境をアップロードした場合を含む)時にトラブルが起きた anchor.png[24]

Page Top

mod_rewriteの設定を確認する anchor.png[25]

 mod_rewriteを使っていませんか? もし使っている場合、前のサーバの設定(絶対パス)がそのまま残っていて不具合を起こしているのかもしれません。

Page Top

キャッシュをすべて削除してみる anchor.png[26]

 前のサーバのファイルをそのままアップロードした場合、キャッシュが残っていてそれが問題を起こしているのかもしれません。cacheフォルダとtemplates_cフォルダの中にあるファイルをすべて削除してみてください。

Page Top

設定ファイルに前のサーバのパスが残されていないか? anchor.png[27]

 XOOPS関連の設定ファイルに前のサーバの絶対パスが残っていませんか? エディタなどにあるgrep機能で確認してみましょう。

Page Top

XOOPS以外の問題はないか? anchor.png[28]

 適当な画像ファイルなどをサーバにアップロードしてみて、それがブラウザで表示されるか確認してみてください。真っ白になったりエラーが表示されるということであれば、XOOPSの問題ではなく、もっと根本的な問題が発生していると考えられます。

Page Top

きっかけに心当たりは? anchor.png[29]

 問題が発生した直前に行った操作を覚えていますか? その操作を行う前の段階に戻せるなら戻してチェックしてみましょう。

Page Top

ここやGoogleなどで検索してみる anchor.png[30]

 エラー文が表示されていたら、それを丸ごと、あるいは一部分でもコピーして検索してみると、同じ問題を抱え、解決した人の情報に辿り着くことがあります。ここに書き込んだとしても結局、そのURLを提示されることになるので自分で検索した方がずっと早く解決できます。
「いや、そうやって表示される解決方法は自分のレベルや環境にに合ってなかったりするから嫌だ。ここに書き込めば自分に合わせて教えてくれる。オーダースーツならぬオーダーアンサーがもらえる」というのは幻想です

Page Top

検索のコツ anchor.png[31]

 Googleで検索しようにも、キーワードとしてなにを入れていいのかよくわからないという場合は以下の方法を参考にしてください。

Page Top
画面にエラー文が表示されている場合 anchor.png[32]

 白い画面に、

Error [Xoops]: Unable to connect to database in file class/database/databasefactory.php line 34

 と表示されていたとします。これいったいなんだろう? と検索する場合はまず、このエラー文を全部コピーしてGoogleの検索フォームに貼りつけて検索してみましょう。
 しかし、この方法だとGoogleは「Error」「Xoops」という単語を含むページを片っ端から挙げていくので、エラー文が書かれていないサイトも引っかかって必要な情報が書かれているサイトを見つけるのに苦労するときがあります。そういう場合は、

"Error [Xoops]: Unable to connect to database in file class/database/databasefactory.php line 34"

 と、エラー文の前後を引用符("←これ)で括って検索してみてください。すると、このエラー文と一字一句同じものが書かれているページだけが引っかかるようになります。

Page Top
エラー文などはないが、おかしなことになっている場合 anchor.png[33]

 そのおかしなことを取り巻いている特徴を短めの文章、または単語で書き出して複数キーワードで検索しましょう。
 たとえば、XOOPSのトップページがある日突然真っ白になって右下にPerfumeのかしゆかの画像が表示されるようになったとします。この状況を検索キーワードで表そうとするなら、

XOOPSで発生しているのだから「XOOPS」
基本、画面が白いから「画面」「真っ白」 or 「白い画面」
右下に特徴的な画像があるので「右下」「画像」
画像はPerfumeのかしゆかなので「Perfume」「かしゆか」

 と、こんな感じになり、

XOOPS 画面 真っ白 右下 画像 Perfume かしゆか

 という複数キーワードで検索すると、うまくすればピンポイントでこの現象の情報が記載されているページが引っかかります。

Page Top

質問する場合の注意点 anchor.png[34]

 上記の方法では解決せず、やはりフォーラムで聞いてみるしかないとなった場合、以下の点に注意して書き込んでください。

Page Top

質問用テンプレート anchor.png[35]

  • [XOOPSのバージョン] XOOPSのバージョン、新規インストールかアップデートか
  • [使用しているサーバ] 共有サーバ or VPS or 専用(自宅)サーバ サーバ会社の名称
  • [Webサーバソフト] Apache以外であれば特に
  • [PHP] PHPのバージョン(XOOPS Cube Legacy2.2であれば、管理画面で見られます)。とりあえず5.3以上か否かが重要
  • [PHPのmemory limit] インストールに失敗するトラブルのときに(XOOPS Cube Legacy2.2であれば、管理画面で見られます)
  • [MySQL] MySQLのバージョン(XOOPS Cube Legacy2.2であれば、管理画面で見られます)
  • [MySQLの文字コード] 文字化けトラブルであれば。MySQL接続の照合順序に表示されているものはなに? phpMyAdminで確認できる
  • [使用ブラウザ] 使用しているブラウザ名、バージョン
  • [問題が発生しているページのURL] 公開しても問題がなければ
  • [問題の内容] 発生している問題を具体的に。表示されているエラーや、特定の操作、環境で発生する場合はそれも

 赤の三つがないと恐らくレスが付きません。PHPのバージョンとMySQLのバージョンもわかるに越したことはありません。
 以下、コピペ用。

[XOOPSのバージョン]
[使用しているサーバ]
[Webサーバソフト]
[PHP]
[PHPのmemory limit]
[MySQL]
[MySQLの文字コード]
[使用ブラウザ]
[問題が発生しているページのURL]
[問題の内容]

テンプレートはEC-CUBEの開発コミュニティサイトのもの[36]を参考にさせていただきました

Page Top

環境と問題をできるだけ詳しく書きましょう anchor.png[37]

 このページを見るほとんどの人は、XOOPSに問題が発生しているのだと思います。つまりXOOPSが病気になっている状態です。質問するにあたっては機嫌も愛想も悪い医者に病状を申告するような気持ちで行うと伝わりやすいと思います。「うまく表示されません」では無視されてしまいます。「そうか大変だね。それでうまく表示されないって具体的には?」とは聞いてくれません。苦しくて脂汗をだらだら流している状態で病院へ行ったらものすごく怖い感じの医者にぶち当たってしまい、椅子に腰掛けても何も言葉を掛けてきてくれないといった状況をイメージして、ありったけの情報をぶつけてください。

Page Top

問題の具体的な書き方 anchor.png[38]

○○ができません。教えてください。
言われた通りにやってみたけど駄目でした。

 と書き込む前に、その○○ができない、駄目という状況を分解してみてください。たとえば「フォーラムに投稿できない」というのが問題だとします。

  • 投稿ボタンをクリックすると真っ白になる
  • 投稿ボタンをクリックしてもなんの反応もない
  • フォーラム自体にアクセスできない

 などなど、いろいろな「できない」「駄目」があるはずです。問題の結果だけではなく、一つ前と一つの後の現象も合わせて書くととうまく伝わると思います。

質問:フォーラムに投稿できません → 回答者:どういう風にできないの? 答えようがない
↓
流れを順序立てる:問題の一つ前「投稿ボタンをクリックした」 → 問題「フォーラムに書き込めない」 → 問題の一つ後「エラーが表示された」
↓
質問:フォーラムに書き込もうと投稿ボタンをクリックしたんですが、○○というエラーが表示されてしまい書き込めません → 回答者:なるほど、そういう状況でそのエラーなら……
Page Top

解決しようとして試したことはすべて書きましょう anchor.png[39]

 質問を読む人は「いろいろやりましたがうまくいきません」の「いろいろ」の内容を教えてほしいのです。もしそれを知ることができれば、「それをやって駄目ならあれかな」とある程度問題を絞り込めますし、また、その解決策を試す必要がなくなります。稚拙なことなので恥ずかしいとは思わないでください。どんな上級者でも自分の環境で問題が起きた場合はまずケアレスミスを疑って、初歩的な解決策から試すものです。

Page Top

最終目的があれば書き添えましょう anchor.png[40]

 東京から札幌へ行きたい人がいるとします。旅行は初めてで、航空券の買い方、飛行機に乗るにあたっての心構え、ホテルの宿泊予約の仕方など、みんなにあれこれ教えてもらいます。ところがよくよく聞いてみると、札幌を観光するのが目的なのではなく、白い恋人を購入する(北海道でしか買えないと思って)というのが本当の目的だった場合、あれこれ教えてあげた人からすれば「いや、それを早く言ってよ。それだったらネットの通販で買えるよ」となるでしょう。
 なにかをしたいけどうまくできないという場合、それとは別に最終目的があれば書き添えておくと「それをやりたいんなら、こういう方法もあるよ。こっちの方が今取り組んでいるやり方よりもずっと簡単だよ」と瞬く間に解決することがあります。

Page Top

可能であれば問題が発生しているサイトのURLを教えてください anchor.png[41]

 なぜか明かされないことが多いサイトのURLですが、セキュリティの面で問題がないのなら思い切って書き込んでください。どんな伝聞よりも大きな情報となります。百聞は一見に如かずです。

Page Top

自己解決したらその解決方法を教えてください anchor.png[42]

 他にも同じ問題で困る人が出てくるかもしれません。トピックの内容を見て、「あ、自分が今遭遇している問題と同じだ!」と思っても「すみません、解決しました」でトピックが閉じられていたら、その人は新たにトピックを立ち上げなければなりません。
 もし、問題の原因がケアレスミスだったとしても恥ずかしがらないでください。そういったものほど解決手段が残りにくいものです。記録を残してもらえたら貴重な情報となります。


Last-modified: 2014-01-13 (月) 22:06:02 (JST) (1167d) by lumbago