#author("2020-10-18T06:34:11+00:00","default:mizutu","mizutu")
#author("2020-10-18T08:05:51+00:00","default:mizutu","mizutu")
[[忘備録]] > サーバー移行

* コンテンツの作成とバックアップ・サーバー移行 [#tebe4a0c]
#contents

** XOOPS X (ten) Distribution [#e71b6efc]
CMSとしてXOOPS X (ten)を利用する。~
+ 以下のサイトから最新版をダウンロードし、サーバーにアップする。
#br
http://xoopscube.jp/modules/doc/?Distributions%2FXoopsX~
 /var/www/html/xoops
 /var/www/xoops_trust_path
以上に配置して、http://サーバー名/xoops/install でインストーラを起動する。~
phpmyadmin を使って、管理ユーザー名の登録とデータベースを作成しておく。
#br
+ インストーラの指示に従い Xoops をセットアップする。
途中、cURLExtention エラーの時&font(Red){(ubuntu18.04では不要)};~
途中、cURLExtention エラーの時&color(red){(ubuntu18.04では不要)};~
 $ sudo apt-get install php5-curl
 $ sudo service apache2 restart
+ 管理メニューからの設定~
 FTPの設定~
  カスタムSSH-FTP(SFTP)~
  SSL(FTPS)  いいえ~
  FTPユーザー名~
  FTPパスワード~
 ~
 →互換モジュール→一般設定→デバッグモード→オフ~

** Xoops のバックアップ [#p98e4925]
+ phpmyadminでデータベースをエクスポート~
%%2GB以上になる場合はエクスポートの詳細設定でテーブルを分割して保存する。%%~
php.iniの設定変更でサポートできるサイズ変更を行う。
#br
+ 次の場所で、データをバックアップ
 $ cd /var/www/html
 $ sudo tar cvzf xoops.tar.gz xoops
 
 $ cd /var/www
 $ sudo tar cvzf xoops_trust_path.tar.gz xoops_trust_path
出来上がった *.tar.gz ファイルを保存する。

** 別のサーバーで再構築 [#s97a614f]
手順再現のため、仮想マシン上に元のサーバーと同じ環境を構築する。~
参考: [[自宅サーバー構築]]~
参考: [[サーバー構築1]]~
+ 新規にXoops を構築してみる~
legacy-stable\html 以下を/var/www/html/xoops にコピー~
legacy-stable\xoops_trust_path 以下を /var/www/xoops_trust_path にコピー~
phpmyadmin を利用して、xoops用のデータベースを作成しておく(入れ物だけ)~
#br
-- 新しくユーザー名と同時に同盟のデータベースを作成した場合、照合順序の設定が引き継がれないことがあるので「操作」「照合順序」で「&font(Red){utf8_general_ci};」になっていることを確認すること。~
-- 新しくユーザー名と同時に同盟のデータベースを作成した場合、照合順序の設定が引き継がれないことがあるので「操作」「照合順序」で「&color(red){utf8_general_ci};」になっていることを確認すること。~
http://ホスト名/xoops/install を起動 xoopsをインストール&設定~
#br
-- 作成するデータベース名などを移行(バックアップ)するサーバーと同一としておくこと~
-- &font(Red){データベースの接頭語を同じものに設定};しておく
-- &color(red){データベースの接頭語を同じものに設定};しておく
#br
+ Xoops を一旦削除
-- phpmyadmin でデータベースを削除。同名のデーターベースを作成する。~
-- mainfile.phpをコピー保存しておく
-- xoops 関連ファイルを削除
 /var/www/html/xoops
 /var/www/xoops_trust_path
&font(Blue){基本的に同一サーバー構成ならば、mainfile.php の XOOPS Virtual Path (URL) を変更};すれば1~2手順は省略可。~
&color(blue){基本的に同一サーバー構成ならば、mainfile.php の XOOPS Virtual Path (URL) を変更};すれば1~2手順は省略可。~
#br
+ バックアップからXoopsをコピー~
それぞれのディレクトリで解凍
 $ cd /var/www/html
 $ sudo tar xvzf xoops.tar.gz
 
 $ cd /var/www
 $ sudo tar xvzf xoops_trust_path.tar.gz
+ mainfile.phpを元に戻し、パーミッションを444に~
+ データベースをphpmyadmin でインポート~
+ xoops を起動
#br

** XOOPS 起動後 トップページに"Protector detects site manipulation."と表示されたら [#a5e7df2a]
これはProtectorモジュールによる簡易サイト改ざんチェックの結果、
何かしら変更があったことを知らせるメッセージ

対応方法

+ XOOPS_URL/user.php で管理者としてログイン
+ ログイン後はXOOPS_URL/admin.phpで管理画面に入り
+ 「Protector」→「一般設定」→「サイト改ざんチェック値」を空にして「送信」
#br

** DB ERROR!: Please initialize an attach file database on an administrator screen. [#mfeae3fe]
対応方法
+ 管理画面→pukiwkiモジュール
+ データベースシンクロを行う。
#br

** データーベースのことなど [#z4f12492]
+ データベースのエクスポートの前に、phpadminにてオーバーヘッドを確認し必要ならば最適化しておく。
+ _session テーブルはクリアしても問題ないので消去するとエクスポート後のファイル容量を抑えることができる。
+ 移行先でインポート後、テーブルの数を確認しておくこと。
#br