Serverのデータを、ローカルにダウンロード。ローカルで表示

まず。データを、ダウンロード。
1, FTPでサーバーのデータをダウンロード

2, サーバーのPHPAdminで全テーブルを、エクスポート。
 (過去の注意書き参照)
  過去の記事で、EUCで保存し直すと書いていたが、今回は保存しなおさなくとも、大丈夫だった。というか、保存し直すができなかった。

3, ローカルのPHPAdmminで、サーバーと同じ名前でDBを作成。

4, エクスポートしたデータを、インポート。
  問題なく、読み込まれて、テーブル上は文字化けをしていない。

5, FTPでダウンロードした全データを、XAMPPの下に置く。
  '/Applications/xampp/xamppfiles/htdocs/xampp/NetBackUp_20110423'
  '/Applications/xampp/xamppfiles/htdocs/xampp/xoops_trust_path'

6, FTPでダウンロードしてきた、「mainfile.php」の複製をとり、「mainfile-server.php」などの、
適当な名前で保存しておく。

7, 「mainfile.php」を開き、パスを書き換える。

8, 「http://localhost/xampp/NetBackUp_20110423/」を開くと、ローカルでサーバーHPが見れる。

モジュールインストール

モジュールのインストールの前に、xoops_trust_pathの設定。
1.サーバーのmainfile.phpをダウンロードし、xoops_trust_pathのパスを記載する。
2.サーバー上に、xoops_trust_pathのフォルダ作成
3.解凍した各モジュールのフォルダで、html、xoops_trust_pathのフォルダの中身をそれぞれ、アップロードする

別のサイトをつくりはじめました。モジュールのこともすっかり忘れてしまっているので、覚え書きを書いておこう。

インストールするモジュール
1.altsys--代替システムモジュール(blocksadmin,tplsadmin)
http://xoops.peak.ne.jp/

2.Pico--D3な静的コンテンツ用モジュール
http://xoops.peak.ne.jp/

3.Xoops Protector--XOOPSのセキュリティ(強化攻撃を未然に防ぐ盾)
http://xoops.peak.ne.jp/

4.d3blog--ブログモジュール(シンプルなD3タイプのブログモジュール)
http://www.kuri3.net/modules/mydownloads/

5.Bulletin2(ブリティン)--ニュースモジュール(suinさん作bulletin2(D3)のHack版)
http://xoops.peak.ne.jp/

6.InquirySP--お問合せスペシャ
http://www.xugj.org/modules/xpwiki/?ModuleManuals%2FInquirySP(お問合せスペシャル)

6.weblinks-- XOOPS リンク集モジュール
http://linux.ohwada.jp/modules/mydownloads/

文字化け解消

この間いろいろ手を加えすぎてわけわかんなくなってしまったので、一からやり直し。DBのテーブルは、eucjpms_japanese_ciにするよう統一
文字セットEUCでDBテーブルは作成するとする。

ローカル(XAMPP forMacOS X 0.7.2):MySQL クライアント: 5.0.51a
レンタルサーバー(heteml):MySQL クライアント: 4.0.25


レンタルサーバーのxoopsデータ、DBデータを消去。
レンタルサーバーのDBを新しく作成。
  MySQL の接続照合順序 eucjpms_japanese_ci にして、新規DB作成。
XOOPSレンタルサーバーへインストール。接頭語を、ローカル環境にあわせておく。
④ローカル環境の管理メニューから、テーマをデフォルト、各モジュールを非アクティブにする。
 ローカル環境DBでオーバーヘッドがないかを確認。オーバーヘッドあるテーブルは、最適化しておく。
 上記確認後、phpmyadminでエクスポート。
  移植するデータベースを選択し、エクスポートタブへ移動。
  

  オプション SQL互換モード → MYSQL40
  構造    レ DROP TABLE / DROP VIEWを追加 (チェック)
          IF NOT EXISTSを追加(チェックを外す)
  データ     長居INSERT文を作成する(チェックを外す)
  ファイルに保存する
  レnon(チェック)

⑤エクスポートされた、「.sql」ファイルをエディタソフトで開く。
 UTF8のファイルになっているため、EUCで保存し直し
今回の文字化けは、このUTF8ファイルで吐き出されていたことが原因。ここが肝でした!
⑥ローカル環境のXOOPSファイルをレンタルサーバーにFTPソフトでアップロード。各モジュール「xoops_trust_path」もアップロード
 「mainfile.php」も「xoops_trust_path」のパスを記入
レンタルサーバー heteml のコントロールパネル/データベースより、phpmyadminへアクセスし、新設したDBを選択し、
 インポートタブへ移動。
 インポートするファイルで、先ほど、EUCで保存しなおした、「.sql」ファイルを選択し、実行
 エンコード レnon(チェック)
⑧DBインポートが一回で成功しないので、何度か実行してみる。
 DB読み込み失敗したりしてやり直す場合は、今のテーブルでデータが入っているものを、一度空にしてから
 読み込みする。

以上の、手順で、文字化けは解消され、ローカル環境で構築したXOOPSがきちんとレンタルサーバーでも移築されました。

余談ですが、ローカル環境やレンタルサーバー環境のDBで、下記SQLを実行してみてその結果を比較すると、

SHOW VARIABLES LIKE 'char%';

<ローカル環境(XAMPP for Mac OS X 0.7.2)>
character_set_client utf8
character_set_connection ujis
character_set_database eucjpms
character_set_filesystem binary
character_set_results utf8
character_set_server latin1
character_set_system utf8
character_sets_dir /Applications/xampp/xamppfiles/share/mysql/charset...

レンタルサーバー(heteml)>
character_set  ujis
character_sets latin1 big5 czech euc_kr gb2312 gbk latin1_de sjis...


というわけで、ローカル環境の、文字環境はこれでいいのかという疑問は残るのですが、とりあえず、この状態でいくことにします。

本チャンサーバとの環境が違うーー

相方さんの指令により、レンタルサーバでのXOOPS構築を進めよということで、本番サーバーに今の環境を移築する方向で作業。とりあえず、今のXOOPSのファイル群をFTPソフトでアップデートし、DBをphpmyadminからインポートすればいいかとざっくりと理解し、作業始める。
レンタルサーバに今の最新版XOOPSをインストールし無事成功。
②ローカルのXOOPSファイル群をアップデート。
③ローカルのphpmyadminから、DBデータをエクスポート。
レンタルサーバphpmyadminから、DBデータをインポート。

順番に操作していき、結局、DBデータのインポートがうまくいかない。
エラーメッセージ。phpmyadminが文字化けでエラー表示もよめないが、いろいろ文字コードを選択して、一部表示された。
#1064 - You have an error in your SQL syntax.

とりあえず、エラーメッセージから検索してみると、mysqlのバージョンが違う場合のエラーメッセージっぽい。

MySQL クライアントのバージョンを調べると
ローカル環境: 5.0.51a
レンタルサーバー: 4.0.25

がーん、ちょっと古いです。MySQLは4.1で大きく日本語文字環境に変更が加えられたみたいで、いろいろ文字化け関連の問題があるようなのですが、4.0と5.0でいろいろ違うところは多いだろうな。。とりあえず、レンタルサーバでDB読み取れるように、ローカル環境のDBエクスポート時に、SQLの変換を、「mysql323」「mysql40」にする。今度は、エラー表示なく、インポートは無事終わる。

しかし、レンタルサーバのトップページを表示させると、文字化け。がびーん。

というわけで、文字コードの設定をいろいろ考えて設定しなければいけない。

現時点の、文字コードの設定。
ローカル環境のDBの文字コード照合順序:eucjpms_japanese_ci 「euc

レンタルサーバでの、php.ini での文字コード設定可能なので、とりあえず、落ち着いて少し考えてから作業するようにしよう。

テーマのメンテナンス

XOOPSの管理画面の『互換モジュール」「テーマの管理」を表示させると、defaultThemeがいっぱい。見分けがつきません。なので、名前変更しときます。それぞれのフォルダ名は変更しているのだけれども、何かを変更しないと表示名が変わらないらしい。
テーマフォルダの中身をみていくと、「manifesto.ini.php」の中に
5行目
Name="@@@@@@@"
とあるので、フォルダ名と同一の名称を入力。管理画面で確認すると無事、名称変更されていた。

また、テンプレートセットを複製しておく。
「互換レンダーシステム」「テンプレート管理」を選択。defaultの「複製」ボタンをクリックし、テンプレートセットの名前を入力し、「複製」をクリック。準備OK。

テンプレートを編集するには、「ALTSYS」「テンプレート管理」から、各モジュールのテンプレートを選択

うぇブログD3「最新記事の一覧」の構造を記述したテンプレートを編集
weblogD3_block_recent_blogs.html

登録ユーザのパスワード?

この間、登録ユーザをいくつか作成したのだけれども、パスワードを忘れてしまったので、「パスワード紛失」ボタンから、メルアドを入力し送信した。送信は失敗したけれども、メールは届いていたのだが、すっかり間違えて、管理者としてのメルアドを入力してしまい、何度かパスワード紛失で再発行手続きをしていたら、パスワードがなんだかわからなくなり、管理者としてログインできなくなってしまった。ぎゃー。

メール送信エラーについては、バグみたいなものなのだけれども、パスワード忘れて管理者で入れないという情報がサイトにあまりない。phpMyadminで、DBのユーザーをみてみると、
usersというテーブルに、passというフィールドがある。ハッシュ値らしきものが入っていて、このハッシュ値から何かわからないかと思ってたら、goodな情報がありました。ありがとうございます。
http://www.sakimura.org/modules/wordpress/index.php?p=323
なので、phpMyAdminで、該当ユーザのpassフィールドを編集普通にパスワードを入力し、プルダウンで、md5を選択。
その後、無事にログイン画面から、先ほどのパスワードを入力し、無事ログインできました。