データベースzelkova_usersの作成に失敗しました。

ある程度動くようになってきたが,管理者パスワードを忘れてしまったのでXOOPSにログインすることができない.多分XOOPSを再インストールしてやればこの状態からは脱出できると思われるが,その前にサイトの配置を少し変更しておくことにしよう.localhostでアクセスするパスをD:\Webとし,この直下にXOOPS2.2/htmlの中身を置くという構成にしてみる.いや,それよりXOOPS2.2/htmlをapacheのドキュメントルートにするという方が早い.⇒http://localhostでXOOPSが起動されるようになったが,ただいまメンテナンス中の画面から中に入れない.「XOOPS Cube Legacy のインストール方法」の説明ではこの設定でlocalhostにアクセスすると自動的にインストールウィザードが開くとなっているのだが…adminのパスワードを強制的に空にしてみよう.⇒ダメだ.もう一度インストールし直すしかなさそうだ.インストールウィザードを開けた.

image

Deprecated: Function get_magic_quotes_gpc() is deprecated in D:\XOOPS2\html\install\class\textsanitizer.php on line 86
Deprecated: Function get_magic_quotes_gpc() is deprecated in D:\XOOPS2\html\install\class\textsanitizer.php on line 86
Deprecated: Function get_magic_quotes_gpc() is deprecated in D:\XOOPS2\html\install\class\textsanitizer.php on line 86
Deprecated: Function get_magic_quotes_gpc() is deprecated in D:\XOOPS2\html\install\class\textsanitizer.php on line 86

image

Deprecated: Function get_magic_quotes_gpc() is deprecated in D:\XOOPS2\html\install\class\textsanitizer.php on line 86
Deprecated: Function get_magic_quotes_gpc() is deprecated in D:\XOOPS2\html\install\class\textsanitizer.php on line 86
Deprecated: Function get_magic_quotes_gpc() is deprecated in D:\XOOPS2\html\install\class\textsanitizer.php on line 86

image

Deprecated: Function get_magic_quotes_gpc() is deprecated in D:\XOOPS2\html\install\class\textsanitizer.php on line 86

image

データベースは存在していてもよいようだが,テーブルが存在するとこの画面から前に進めないようだ.データベースを丸ごとドロップした.

image

ユーザテーブルの作成に失敗している.この後管理者の登録を実施するので登録ゼロで失敗とも考えられるが,説明文では✗にはなっていない.管理者ユーザを登録したがレコードの挿入に失敗している.もう一度作り直してみよう.ユーザテーブルは保存しておいたが,エラーになっている.

<b>Fatal error</b>:  Uncaught TypeError: mb_detect_encoding() expects parameter 1 to be string, bool given in C:\xampp\phpMyAdmin\libraries\classes\Util.php:1620
Stack trace:
#0 C:\xampp\phpMyAdmin\libraries\classes\Util.php(1620): mb_detect_encoding(false, ‘UTF-8’, true)
#1 C:\xampp\phpMyAdmin\libraries\classes\Plugins\Export\ExportSql.php(725): PhpMyAdmin\Util::localisedDate()
#2 C:\xampp\phpMyAdmin\export.php(444): PhpMyAdmin\Plugins\Export\ExportSql-&gt;exportHeader()
#3 {main}
  thrown in <b>C:\xampp\phpMyAdmin\libraries\classes\Util.php</b> on line <b>1620</b><br />

ダメだ.本体のエクスポートでも失敗している.これはかなりまずいことになった.エクスポートが使えなかったら何の役にも立たない.問題は

Uncaught TypeError: mb_detect_encoding() expects parameter 1 to be string, bool given in C:\xampp\phpMyAdmin\libraries\classes\Util.php:1620

というところだ.ネットで検索すると

phpMyAdmin5.0.1の「状態」タブがFatal Errorで表示されないバグ
https://crieit.net/posts/phpMyAdmin5-0-1-Fatal-Error

という情報があり,似たような状況で暫定対処策を提案していたのでそれに従って,「とりあえず日本語ユーザーができる仮対応としては、

C:\xampp\phpMyAdmin\libraries\classes\Util.phpの1617行目を

$ret = strftime(‘%Y-%B-%d %H:%M’, (int) $timestamp);

に書き換えることで閲覧できるようになる――のような修正を行った.これでエクスポートは問題なくできるようになった.もしかするとこれで問題解決している可能性もあるので,もう一度データベースを組み直してみよう.ダメだ.やはりユーザテーブルは作られていない.

「サイト管理者についての設定」画面のところで「実行」する前にオリジナルのSQLをインポートしてみよう.ダメだ.読み込めない.「#1007 – データベース ‘oa00090878_babalabo’ を作成できません。データベースはすでに存在します。」で無動作になってしまっている.テーブルだけを書き換えるようにすればよいのだが,このファイルは大き過ぎてNoEditorで編集することができない.どうすればよいか?一度データベースをドロップしてみよう.⇒オリジナルをインポートしてユーザテーブルからadminを落とした上で管理者登録を実行してみる.⇒どうやら失敗したようだ.

image

この操作はかなり無理があるとは思われるが…一番の問題はインストールウィザードでユーザテーブルが作れないという点ではないだろうか?もう一度やり直してみよう.

NG データベースzelkova_usersの作成に失敗しました。

どのようなエラーが起きているのかは何も情報がないので分からない.管理者登録を実行すると,下記のエラーが出る.

NG 1個のデータをデータベースzelkova_usersにインサートすることに失敗しました。

それ以外にはエラーは発生していない.エラーを無視して進むと

Warning: Cannot modify header information – headers already sent by (output started at D:\XOOPS2\html\core\XCube_Service.class.php:121) in D:\XOOPS2\html\install\wizards\install_nextStep.inc.php on line 11

の警告を出して行き止まりになる.legacy-r2_2_02というのをダウンロードしてみた.これは XOOPS Cube のコアと思われる.動作は同じかもしれないが…これは本家版で英語しかサポートしていない.Confirm database settings 画面から次に遷移するところで以下のようなエラーになった.

Fatal error: Uncaught Error: Call to undefined function mysql_connect() in D:\XOOPS2\html\class\database\mysqldatabase.php:86 Stack trace: #0 D:\XOOPS2\html\install\class\dbmanager.php(51): XoopsMySQLDatabase->connect(false) #1 D:\XOOPS2\html\install\class\dbmanager.php(62): db_manager->connectDB(false) #2 D:\XOOPS2\html\install\wizards\install_checkDB.inc.php(14): db_manager->isConnectable() #3 D:\XOOPS2\html\install\index.php(100): include(‘D:\\XOOPS2\\html\\…’) #4 {main} thrown in D:\XOOPS2\html\class\database\mysqldatabase.php on line 86

このエラーはバージョンの問題と考えられるが,以下のような情報があった.

PHP7で、mysql_connect()が無いと怒られる件 (undefined function mysql_connect)
https://qiita.com/okamoto0/items/a2568133064b74f837bb

解決策としては,①mysql_系関数を mysqli_系関数に書き換える:mysql_connectをmysqli_connectに変える.②古いモジュールを使用する(php-mysqlを入れる等)としている.これは結局現在使っているxamppがまだ少し古いということを意味しているように思われる.いや,その逆かもしれない.mysql_connectを呼び出しているのはXOOPSの方だから,XOOPSの方が古いということになる.確かにそのようだ.どうすればよいか?

この記事ではPHP7でこのような事象が起きるとしているので古いxamppを使えば解決しそうに思われるが,問題はロリポでどのバージョンを使っているのか?という点だ.ロリポで使えるのは3種あるが,PHP7.1(CGI版),PHP7.3(CGI版),PHP7.3(モジュール版)でいずれも7以上だ.つまり,仮にローカルで動かせるようになったとしてもリモートには持ち出せないということになってしまう.そうなると,XOOPSのもっと新しい版があるのか否か?という話になってくる.

mysqli_connect という関数は現在の環境でも存在するようなので,まずソースを修正してみることにしよう.mysql_connectという関数の出現は1,2箇所と見られるがそれだけでは済まない.おそらく,mysql_xxxという関数セットをすべてmysqli_xxxに書き換える必要があるように思われる.30箇所くらいあるが,ほとんどはmysqldatabase.phpの中だ.それ以外ではmysql_real_escape_stringという関数が複数箇所で使われているがとりあえず無視しておこう.mysqldatabase.phpで17箇所置換した.⇒未定義関数エラーは発生しなくなったが,データベースに接続できない.

この版ではPHPは5.x以上,MySQLは4.4以上となっている.インストールされているxamppのPHPは7.4.2,phpMyAdminのバージョンは5.0.1だ.データベースを先に作れということなのだろうか?いや,残っていた.ドロップしてみよう.いや,同じだ.ユーザをrootに変えてみたが変化なし.日本語版ではこの問題は出ていないのだが…

image

このエラーでハマっている人も結構いるようだが,「設定の問題ではないか?」という回答しかない.エラーは出ていないが,どこかでまだmysql_connectを使っているところがあるのだろうか?どうも埒が明かないのでこの線はあきらめることにしよう.XOOPSのもっと新しい版があるかどうか探してみる.XOOPS Cubeに関するWikiの記事は2012年頃で更新が止まっている.ネットには2015年に「XOOPS CUBEの開発がついにクローズに – TSUKURU STYLE」という記事が出ている.「XOOPSの敗因は?今後繁栄するCMSは?良回答に300PT進呈します。 Ya… – 人力 …」などという記事もある.2011年頃ですでに「WordPress と Joomla! と Drupal が現在の3強」と言われていたようだ.

フォーラムなどはpicoで書いていたと思われるが,屋根裏部屋はWordPressを使っていたのではないだろうか?ただし,今のところバックアップの中にはそのような時期のものは見当たらない.つまり,かなり初期のものしか使えない状態になっている.もう一度新しいバージョンに戻って動くところまでやってみることにする.

インストール時のDBテーブル作成ERRORについて
https://xoopscube.jp/forum/6499

このページには以下のような解決法が載っている.

\html\install\sql\mysql.structure.sql
上記ファイルの70行目と536行目を以下の様に変更して、とりあえず、この問題は解決しました。
×email varchar(256) NOT NULL default ”,
○email varchar(255) NOT NULL default ”,

いや,手元のバージョンではその通りになっている.とりあえず,mysql_→mysqli_の置換修正を先に入れておこう.関わりのあるソースは

  • class/database/mysqldatabase.php 20箇所
  • class/logger.php
  • install/language/ja_utf8/charset_mysql.php
  •  

    の3本だが,2番目は定数,3番目は正しい論理になっているので,mysqldatabase.phpの修正だけで済んだ.テーブルが生成されないという問題でもう一つの解決法が見つかった.

    XOOPS Cubeのインストール時にテーブル作成エラー
    https://itoben.com/blog/6.html

    この記事では原因を「MySQLバージョン5に対応していないことによる」としている.

    下記ファイルを修正することで問題が解消します。
    install/sql/mysql.structure.sql

    「TYPE=MyISAM」という記述を,すべて「ENGINE=MyISAM」に変更する。

    しかし,この修正もすでに入っている.もう一つの修正「C:\xampp\phpMyAdmin\libraries\classes\Util.phpの1617行目を $ret = strftime(‘%Y-%B-%d %H:%M’, (int) $timestamp); のように変更する」も入れておこう.このファイルを開くと以下のエラーが出る.

    image

    NoEditorは文字コードをSJisに変換しようとするのでUTF8が崩れる可能性がある.何か別のエディタを見つける必要がある.

    XOOPSの初期画面が出るところまでは進んだがログインできない

    TentVil というフォルダを廃止してWordPressをドキュメントルート直下に置いたら,動作が変化した.メニュー4項目のうち,最初の「ゼルコバの木2020」を除いてすべて正しく動作するようになった.このメニュー項目のリンク先がどこに格納されているかを突き止めれば動作するようになるだろう.

    テーブル:posts の最初の投稿「さあ,もう一度ゼロから始めよう」の中にある

    background-image: none;” alt=”1x” src=”https://zelkova-tree.net/WordPress/wp-content/uploads/2018/12/1x_thumb-1.jpg” border=”0″>

    という行はおそらく効いていないと思われる,が改めてみよう.特に効果はなかった.データベース全体を検索する機能があったので「zelkova-tree」で検索してみたところ

  • cpd_counter 3630件
  • options 3件
  • postmeta 1件
  • posts 2685件
  •  

    がヒットした.どうもこのpostmetaというのがそれらしい._menu_item_url というキーが付いているのだから間違いないだろう.うまく行ったようだ.zelkova-treeが生で入っている箇所はこれ以外にも6千箇所以上あるが,動作的には多分問題ないのではないかと思う.これで一応現在のユーザ会サイトであるテント村のページと同期を取ることができた.冷たい森サイトも少し手を入れておこう.冷たい森サイトの表紙画面以外はすべて相対アドレスでリンクしているので頭から http://localhost/Ayanet/babaken/bindex.html にジャンプすればほぼ問題なく見えるようだ.カバーページから英語版と日本語版に分岐するようになっているが,このページはもう廃棄してよいだろう.

  • image image

    上の右図には「冷たい森」というタイトルは出てこないが,馬場研究所という名前は出ているのでこれでよいのではないか?さて,いよいよユーザ会サイトの復元だ.ともかく最新のバックアップを見つけなくてはならない.ユーザ会が発足したのは2007年11月だがクラブハウスがオープンしたのは2010年5月5日だ.2011年8月にadodb-sessions.oracle.clob.sql など adodb-sessions.という接頭辞の付いたファイルが残っているがこれはなんだろう?いや,サイズも小さいので何かを試験的にやっていたものだろう.

    2010/11/18にmysql31.chicappa.jp.sql という名前で25.0MBというのが残っている.更新日時と名前が同じファイルが5本ある.そのうちの最新のものは「YOMOGI 2012-01-24 ATTACK後」というフォルダに入っている.その一つ前のファイルはYOMOGI 2011-11-27だ.Eドライブには更新日時2012/03/12で30.9MBというのがある.これは自家サーバというフォルダにはいっていたものだ.同じ日付でmysql31.chicappa.jp.sql 97.1MBというのもあった.mantisのバックアップもある.2013/01/20で3.42MB.⇒30.9MBというファイルが見当たらなくなってしまった.その代わり同サイズのファイルでLAA1011209-oo3470.sqlというのがある.これは昨日取ったばかりのWordPressのデータだ.読み間違いだろうか?2013/01/31にlocalhost.sql という名前で110MBというのがある.

    localhost.sql はインポートできなかった.Incorrect format parameter というエラーが出ている.mysql31.chicappa.jp.sql も同じだ.ファイルが壊れているのだろうか?エディタでも読み込むことができない.2016年にネットが止まるまでは定期的にバックアップを取っていたはずなのだが,その時期のものがまったくないというのはどういうことだろう?すでに廃棄してしまったPCにまとめて入っていたのだろうか?ZIPとして取り出していたのではないか?WinSCPでコマンド操作していたような気がする.いや,そうでもなさそうだ.

    いや,そもそもインポートできるファイルが最大40MiBだ.コマンドを使って転送できるだろうか?LAA1011209-oo3470.sql 31MBはインポートに成功しているが,NoEditor では読み込むことができない.バイナリが入っているというのだが…いや,いつの間にか読み込んだデータベースが生成されている.いつできたのだろう?この中のテーブルは概ね正しいように思われる.testにもpmaを接頭辞とするテーブルがいくつも作られている…自家サーバに入っているmysql31.chicappa.jp.sql 25.0MB で生成されたようだ.testに入っているテーブルはphpmyadminのデータベースの中身と構造がまったく同じだ.

    いや,自家サーバー/XOOPSに入っているのは99,468KBだから違う.このファイルはインポートできない.Incorrect format parameter になる.それではどこから持ってきたのか?G:\外付けHD全バックアップ 2013-01-30\G.KEIKO\YOMOGI 2011-11-27にあったものだろう.YOMOGI 2012-01-24 ATTACK後に入っているのも25,656KBで大きさはまったく同じだ.2014年~2018年のログはタイトルの冒頭に日付が入っているので,おそらく公開していないのではないかと思われる.とすれば,おそらく遅くとも2014年にはサイトの更新はまったく止まった状態になっていたのではないかと思われる.いや,2015/06/28までは投稿していた形跡がある.この時期までのSQLがあればよいのだが…

    いや,違う.タイトルに日付が入っていない原稿は確かに投稿されていないものと思われるが,ゼルコバの木以外の作業をやっていたためではないか?しかし,系図関係のログでもタイムスタンプ入というのはある.2015/09/28に「ネットが止まってしまった」という記事があるが,2015/10/29には「ネットが復活した」ともある.「屋根裏部屋」はある程度ローカルにバックアップがあるので復元しようと思えば可能だ.YOMOGI 2011-11-27とYOMOGI 2012-01-24 ATTACK後はサイズがまったく同じなので前者をインポートすることにする.しかし,これは更新日付が2010/11/18なのであまり新しくない.これを読み込むと以下のエラーになるが,テーブルは(おそらく)すべてインポートされている.

    登録ユーザ数は683人だ.もっと大きなファイルもあるが,phpMyAdminで読み込み可能なファイルサイズが40MBしかないのだから仕方ないだろう.この上はいきなり97MBになってしまう.登録ユーザデータはCSV形式でもダウンロードしているはずなのだがどこかにあるだろうか?ただし,CSVで取り出しているのは比較的初期の頃と思われるので存在していたとしてもあまり役に立たない可能性もある.古い話をすると2006年頃はBloggerを使ってログを付けていた.97MBのSQLファイルをWordPadで読ませてみたが,72%完了で止まってしまった.応答なしになっているのでこれ以上は無理だろう.ファイルをエディタで読み込むことができれば,テーブルに分割してサイズを小さくできる可能性もあるのだが…

    ともかくこの状態でブラウザで閲覧できるようにしなくてはならないのだが,そのためにはXOOPSを使う必要がある.XOOPS2.2は単純にインストールしてあるというだけなのでここから調整するのはかなり厄介だ.いや,驚くべきことにWordPadでファイルを開くことができた.ただし,残念ながら完全に文字化けしている.NoEditorはもっと強力と思ったのだが…しかし,探せば世の中にはこのくらいのファイルを読めるエディタが存在する可能性はあるので,ここは一時保留ということで先に進むことにする.

    http://localhost/XOOPS2.2/html/ では一応ログイン画面は開くが管理者も決まっていないのでログインはできない.

    image

    http://localhost/XOOPS/ では以下のエラーになる.

    Parse error: syntax error, unexpected ‘new’ (T_NEW) in D:\XOOPS\core\XCube_Root.class.php on line 496

    これは前にも出ていたエラーだ.しかし,XOOPSは一度は動くようになっていたはずなのだが…そもそもこのXOOPSはどこから持ってきたものだったのか?⇒xampp-win32-.1.6.3a で2007 SUMMERのXOOPSを使っている.mainfile.phpでユーザIDとパスワードをデフォルト設定してXOOPSの初期画面が出たとしている.この後,picoモジュールをコピーしてエラーはすべて消えたとなっている.それからxamppの最新版 xampp-windows-x64-7.4.2-0-VC15-installerを導入.ここで上記のエラーが起きたためXOOPSの最新版 legacy-stableに切り替える.ということはやはりXOOPS2.2を使わないとダメということではないだろうか?http://localhost/XOOPS2.2/ を開くと以下の画面になる.

    image

    ここでhtml/のフォルダをクリックするとログイン画面に移る.XOOPS2.2/mainfile.phpを修正してようやく動き始めた.以下の画面が出せるようになった.

    image

    残念ながら guest:zelkova ではログインできなかった.データベースにはguestという名前では登録がない.「ログイン情報が間違っています」のエラーになる.管理者権限を持つIDは4つあるが,パスワードが分からない.データベース中ではパスワードは暗号化されているので書き換えもできない.管理画面に入れればいろいろなことができるようになるのだが…どうしたらよいだろう?しかし,この画面イメージはサイトを立ち上げたごく初期に出していたものだ.データベースの内容はすでにユーザ登録が683あるのですでにある程度活動していた時期のものと思われるのだが…一つだけ使えるIDがあったが,「以下のモジュールが導入されていません」で止まってしまう.

    image

    これらのモジュールはmodulesフォルダには入っているのだが,インストールボタンでエラーが発生し,元の画面に戻ってしまう.おかしい.パスワードが通らなくなってしまった.エラーメッセージすら出なくなってしまった.万事窮す...まず最初に「インストール」という操作をやる必要があるのではないだろうか?インストール作業時にサイト管理者名,パスワードなどの設定ができるようになっている.しかし,インストールするとデータベースが初期化されてしまうのではないだろうか?いずれにしても,それしか方法はないような気がする.

  • データベースに接続できた

    多少進展があった.以下のようなことが分かった.

    1. ロリポップ!のユーザ専用ページ→サーバーの管理・設定→データベース→操作する→phpMyAdminを開くという機能があった
    2. XAMPPは元々小規模なシステムのローカルサーバーとして使われることを想定しているため,MySQLのrootユーザのパスワードなしが既定になっている.旧バージョンでは「セキュリテイ」というオプションでパスワードの設定・変更ができるようになっているが,現在のバージョンではコマンドプロンプトで直接アクセスする方法しかない
    3. ロリポップ!では有償(300円/月)でバックアップサービスを提供している.これにはデータベースのバックアップ,ダウンロードとリストアが含まれるが加入していなかった

    ということのようだ.ともかくこれでWordPressのデータをサイトから取り出せるようになる.まず,MySQLのルートユーザのパスワードを設定しておこう.

    image

    これでrootのパスワードは設定できたが,XAMPPのコントロールパネル→MySQL→AdminでphpMyAdminが開けなくなってしまった.Config で my.ini を開いてみるとパスワードは未設定なのでここを直さなくてはならないのではないだろうか?MySQL/config.inc.phpも更新されていないので修正する必要があると思う.特に

    [‘auth_type’] = ‘cookie’

    としないとログインパネルが出ないという構造になっている.⇒ようやくまともに動作するようになってきた.phpMyAdminのHOMEボタンの右のアイコンから「ログアウト」できるようになった.上でエクスポートしたファイルを取り込んでみよう.⇒インポートするためには先にデータベースが生成されていなくてはならないようだ.これをまず作っておく必要がある.今のインポートでデータベース名を覚えていたようだ.インポートは正常に終了したのでアクセスしてみよう.まずappacheのドキュメントルートを切り替える必要がある.⇒ジャンプできるようになったがデータベースにアクセスできていない.wp-config.phpでMySQLのホスト名を設定する必要があるだろう.一応データベースには接続できたようだ.

    image

    それらしきものが表示されているが,ほとんど壊れている.試みにネットに接続して localhost/tentvil/wordpressを開いてみると下図のようになった.

    image

    これは結局WordPressでページを初期化する段階でWordPressのサイトにアクセスしていることを意味する.そのとき得られた情報はクッキーか何かに保存されているようで,ネットから遮断しても上の画面は出てくるが,クッキーを削除してしまうとその上の壊れた画面に戻ってしまう.

    テント村サイトからダウンロードしたファイルの中には zelkova-tree.net という文字列は見当たらない.情報を暗号化していることも考えられるが見た限りはそのようなことを行っているようにも見えない.ログイン画面が開ければ何とかなりそうな気もするが,それもかなり難しそうだ.データベースにはいくつかzelkova-tree.netという文字列が入っているところがあるのでその部分だけでも修正してみよう._options というファイルに siteurl と home という項目があり,ここに https://zelkova-tree.net/WordPress という値が入っている.これを http://localhost/tentvil/WordPress に変えてみる.

    !出た!完璧だ.

    image

    見た限りでは何も欠けているものはないように思われる.この Live Writer から投稿できるかどうか試してみることにしよう.いや,おそらくダメではないかと思う.仮に可能であるとしてもおそらくネットにアクセスできる状態になっていないと通らないのではないかと思う.とりあえず,やってみることにしよう.「ブログのオプション」を書き換えるだけだ.

    image

    いや,この画面では編集できない.「アカウント情報の更新」ボタンが下記パネルが出る.

    image

    なぜだろう?ネットに接続していないのに登録が完了した.

    image

    いや,そもそもまだすべてのページが表示されるような状態にはなっていない.確かにトップページだけは頭の先から尻尾まできれいに表示できているが,メニューからはどこにもジャンプできない状態になっている.これらのリンクはすべて http://zelkova-tree.net/WordPress/ を経由するものだ.現在使っている WordPress はテント村サイトからダウンロードしたものだが,WordPress 自体はローカルでも走るので未使用のWordPress をダウンロードしてインストールしてやれば動作するのではないだろうか?データベースに関してはほぼ問題なくコピーできているように思われるのであれこれ試すよりも手っ取り早いような気がする.

    ネットに接続してブログアカウントを元に戻した.今度はリモート投稿のためのURLの入力を求められた.ローカルとリモートを区別しているのかもしれない.いつの間にそうなったのか分からないが,Windows Live Writer のレイアウトが変わって左右の余白がなくなり,代わりに段落でリストを指定できるようになった.

     

    Windows Live Writer の動作がおかしい,段落スタイルでリストにならない

    2月23日で作業が止まっている.環境が整うまで待っていたら大穴が空いてしまうのでともかく始めることにしよう.どこで止まっているか,というよりどこまでできたかを整理しておこう.おかしい.段落のスタイルでリストにならない.プレビューで見ればリストになっているのだが…TAMOZのOpen Live Writer はまともな動作になっている.変換文字列がスクリーン中央に表示されるというのもうれしくない.ただし,これはグーグル日本語変換の場合でMS IMEならそのようなことは起きない.

    いや,これは元からそういう動作だったのかもしれない.プレビューでも段落番号は欄外に表示されているが,おそらく編集画面では欄外を表示しないという仕様になっているのだろう.Open Live Writer にはこのような「欄外」という領域は存在しない.以前の動作はよく覚えていないが,我慢して使っていたのだろうか?かなり使い勝手が悪かったのではないかと思うのだが…多分,BHでは Windows Live Writer ではなく,Open Live Writer を使っていたのだろう.

    1.XAMPP をインストール
    2.xammp\apache\httpd.conf で DocumentRoot を設定 (時価サーバー\XOOPS)
    3.Xoops\mainfile.php を編集してXOOPS_ROOT_PATH,XOOPS_TRUST_PATH,XOOPS_URL を設定する
    4.Parse error: syntax error, unexpected ‘new’ (T_NEW) in C:\zelkova-tree.net\web\core\XCube_Root.class.php on line 538 が起きる
    5.xampp-win32-1.6.3a.zip をインストール
    6.XAMPP の初期画面が表示されるようになる (2007年 SUMMER のXOOPS)
    7.Fatal error: Unable to connect to database in D:\XOOPS\class\database\databasefactory.php on line 34 というエラーになる
    8.WinMySQLadmin のパネルは開ける
    9.「Driver 3.51 Not Found」というエラーは無視
    10.xampp\mysql\my.ini でbasedir=”C:/MySQL5.0/”を切っている
    11.mysql\bin\my.cnf の[mysqld] でbasedir, tmpdir, datadir を設定している
    12.YK氏よりOSをクリーンインストール後,再インストールエラーのクレーム
    13.xammp をCドライブに移動して,Dドライブをサイトイメージ専用にする
    14.phpMyAdmin でエラーが出る:Your configuration file contains settings (root with no password) that correspond to the default MySQL privileged account. Your MySQL server is running with this default, is open to intrusion, and you really should fix this security hole.
    15.xampp\mysql\dataに2007-08-28 XOOPS update\MySQL5.0\dataに格納されているxoopsフォルダをコピーしてその内容をphpMyAdminで読み出せるようになった
    16.XOOPS\mainfile.phpでユーザIDとパスワードをデフォルト設定してXOOPSの初期画面が出た
    17.pico モジュールをXOOPS\moduleにコピーしてエラーがすべて消えた
    18.ALTSYSとprotectorのモジュールを追加コピーする
    19.2007 SUMMER は自家サーバを実験している時期で
    babalabo.blogdns.com を使っていた
    20.冷たい森のサイトイメージ SHARED\AYANET をルートに置いて動作確認:リンクが固定アドレスになっているため内部には入れない
    21.FTPソフト WinSCP をインストールして,ゼルコバの木テント村のサイトイメージをダウンロードする:E:\ゼルコバの木テント村
    22.テント村にアクセスしようとしてエラー:Your server is running PHP version 5.2.3 but WordPress 5.3.2 requires at least 5.6.20.
    23.C:\xamppをxampp 2007とリネームした
    24.xampp の最新版 xampp-windows-x64-7.4.2-0-VC15-installer をインストール
    25.WordPress を開こうとすると「データベース接続確立エラー」になる
    26.XOOPSをlocalhostにして:Parse error: syntax error, unexpected ‘new’ (T_NEW) in D:\XOOPS\core\XCube_Root.class.php on line 496 のエラーになる
    27.XOOPS の最新版 legacy-stable.zip をインストールしてD:/XOOPS2.2/html でCube 2.2 のインストールウィザードが開く
    28.以下のエラーが出ている:Deprecated: Function get_magic_quotes_gpc() is deprecated in D:\XOOPS2.2\html\install\class\textsanitizer.php on line
    86
    29.XOOPS2.2はPHP 5,MySQL 3.23xxで動作可能
    30.C:\xampp を C:\xampp 2007 にリネーム

    現在構築しようとしているゼルコバの木サイトには以下の3つのコンポーネントがある.

    1.冷たい森(馬場研究所ホームページ,HTML, CGI)
    2.ゼルコバの木ユーザ会クラブハウス(XOOPS ベース, PHP)
    3.ゼルコバの木テント村(WordPress ベース)

    WordPress と XOOPS はどちらもデータベースを使っている.ユーザ会ホームページのSQLイメージはバックアップがあるが,WordPress の方はまだ取っていない.ユーザ会の方はバックアップを取った時期,モジュールとの整合性などの問題があるので,先にテント村の方を調べてみることにしょう.WordPress ではデータベースサーバ名,管理者ID,パスワードなどが分かればアクセスできるはずだ.WordPress\wp-config.php では以下を設定している.DB_NAME,DB_USER,DB_PASSWORD,DB_HOST.これらの値は基本的にすべてロリポップ!から提供されているものだ.

    それを確認するためにはリモートサーバにアクセスしなくてはならないが,どうやってやっていたのだろう?MySQL のアプリがあったような気もするのだが… mmm…失敗した.localhostでXOOPSのインストーラが立ち上がってきたのでWordPressのデータベースで初期設定してしまった.ロリポップでは複数のデータベースが使えたような気もするのだが…⇒データベースは30個まで作ることができる.この際別々に作った方がよいと思う.

    phpMySQLadmin はブラウザからアクセスしていたはずだからドキュメント領域に置く必要がある.

     

    データベースの接続がうまくゆかない

    phpMyAdmin を apache のルートに置くことでブラウザから開くことができるようになった.WordPress のデータベース設定は wp-config.php に入っているのでまずこの設定で新しいデータベースを組み込んでみよう.いや,phpMyAdmin は開けるが設定が通っていないようだ.以下のエラーになる.

    MySQL サーバに接続しようとしましたが拒否されました。config.inc.php のホスト、ユーザ名、パスワードが MySQL サーバの管理者から与えられた情報と一致するか確認してください。

    phpMyAdmin の config.inc.co.jp では[‘user’] = ‘root’,[‘password’] = ” になっている.MySQL と合っていないのだろう.そもそも,phpMyAdmin を開いたときログイン画面が出ないというのが問題だ.まぁ,これはユーザが root でパスワードなしになっているためかもしれないが…

    mysql\my.ini でパスワードを設定したらxamppでMySQLが起動できなくなった.これはMySQLの起動に関わる動作なので phpMyAdmin の設定とは関わりがないはずだ.従って xampp のデータベース設定と不一致が起きているものと思われる.また,my.ini にはユーザIDの設定項目は存在しない.xampp には passwords.txt というファイルがあり,ここでデフォルトパスワードを設定(例示?)している.おかしい.パスワード設定を元に戻しても接続できなくなってしまった.

    古いバージョンのxamppなら問題なく走る.xamppの設定に関してはmysql\my.ini しか直していないはずだが,オリジナルに戻しても動作しない.再インストールしてみるしかなさそうだ.⇒カスペルスキーの「実行アプリケーションの制限」が止めたままになっていた.これはまずい.再インストールの前に一度「有効」にしてから作業することにする.もう一度xampp-windows-x64-7.4.2-0-VC15-installer.exe を実行してみよう.アンインストールしてからインストールすることにする.

    これで復旧できた.xampp コントロールパネルの中から phpMyAdminの設定変更などができるようだ.my.ini も MySQLのConfigで開くことができる.PHP.iniで以下を設定した.

    default_charset=”UTF-8″
    date.timezone=Asia/Tokyo
    mbstring.language = Japanese
    mbstring.internal_encoding = UTF-8

    また,apache の httpd.conf でDocumentRoot と DirectoryをD:/とした.今度はphpMyAdminでユーザアカウントのタブが開けるようになった.これでユーザアカウントの追加ができる.データベースも追加することができた.ロリポップ!からデータベースのイメージをダウンロードしてみよう.どうやっていたのか忘れてしまった.MyAdminを使っていたような気がするのだが…ロリポップはデータベースをサポートしないのでロリポにはデータベース用のツールは存在しない.

    やはり phpMyAdmin を使っていたのだと思うが,phpMyAdmin を開いたときログイン画面が出ないというのが問題だ.ログイン画面では「サーバの選択」ができるのでリモートデータベースにアクセスできる.

    phpMyAdmin の config.inc.php を書き直して,ユーザIDとパスワードを設定してみたところ以下のエラーになった.

    image

    mysql の my.ini にはパスワードの設定があるので同じ値を記入してみたが,状態は変わらない.config.inc.ph で auth_type を config から http に変えたらログインパネルが出るようになった.ただし,そのさきに進まない.

    image

    キャンセルで閉じると「ユーザ名ないしパスワードが間違っています アクセスは拒否されました」のエラーになる.auth_type を cookie に変えたところようやくログイン画面になった.

    image

    しかし,まだパスワードは通っていない.config.inc.ph の設定は効いているのだが…どうもまたこじれてしまったようだ.

    ネットアクセス用10.1インチ 2 in 1 タブレットPCを修理に出した

    なぜだろう?タブレット(TAMOZ)には Open Live Writer がインストールされているが,このPCでは Windows Live Writer が走っている.アップロードするサイトの設定など入ってWindows Live Writer が使える状態になっている.どういうことだろう?Windows Live Writer が使えないので Open Live Writer をインストールしたのではなかったろうか?どうもよく分からなくなってきた.過去ログを読めば書いてあると思うが…Windows Live Writer は Windows Essentials に入っている.

    昨日 2 in 1 タブレット(BlackHawk)をコンビニからメーカーのサポートセンター(宮崎)に発送した.いろいろとやってみたがどうしてもOSの再インストールができなかったためだ.有償で5500円くらい掛かるというが仕方ない.配達は29日土曜日ということになるので修理に掛かるのは週明けということになるから来週中に手元に戻ってくるかどうか?どんなに遅くとも3月10日には戻ってくると思うが…開発機からはネットにアクセスしないという原則になっているが,BHがないのでここでログを付けるしかない.

    数日前に Amazon から購入したWesternDigital 社製の WDCloudという無線HDは返品した.WiFiで接続できるものとばかり思っていたのだが,有線LANでしか接続できない.USB接続で外付けHDとして使えればまだ救われるのだが有線LANに接続しないと何もできないようになっている.パソコンのLAN端子に繋いでやると一応認識はされるが,それ以上のことはできない.この端子はルーターに接続するという仕様になっているためだ.無線LANルータは2つあるがどちらもLAN端子を持っていない.デバイスの管理もすべて外部のサイトにアクセスしなくてはならないというのも予定外だった.

    この製品を選んだのは My Cloud が実現できるという謳い文句に乗せられたためだが,外部からアクセスするためには2つ回線が使えなくてはならない.今のところその予定はないのだからもともとこのプラン自体が成立していないことに製品が届いてから気付いた.

    同じWesternDigital社製でWiFiに接続できる無線HD製品がある.ただし,品薄状態で米国から取り寄せということになる.上記の返品はすでに受け付けられて返金されているので注文を出しておくことにしよう.このくらいなら TAMOZ タブレットからでもできる.WD 2TB My Passport Wireless Pro Portable External HD という製品(\25,330)だ.無線ルーターに有線LANで接続するタイプなら同じ容量でもっと安い製品もあるが…⇒発注した.配達予定日は3月12日~3月22日だ.誕生日には間に合わない.

    なぜだろう.注文請書は出ているのにクレジットが通らないというメールが届いた.残高不足だ.上の返金がまだ入っていないのだろう.多分明日になれば処理できると思うので待ってみよう.

    Your server is running PHP version 5.2.3 but WordPress 5.3.2 requires at least 5.6.20.

    php-7.4.3-Win32-vc15-x86 をインストールすると下記のエラーになる.

    image

    いや,手順を間違えたようだ.動いている.動いてはいるがPHPのバージョンは変わっていない.しかし,ApacheをApache24つまりhttpd-2.4.41-win32-VS16に差し替えると上のエラーが発生する.というか,Apache24にはapache.exeが入っていないので便宜的に配布パッケージを上書きコピーして使っているのだが…

    ここは一旦これでクローズして新しいXamppのパッケージのインストールを試みることにする.ここまでの変更は元に戻して一応動く状態にして退蔵することにする.いや,まだ少しできることはあるのではないか?PHPを7.4.3に切り替えても一応動いているのだから,この部分は残しておいてもよい.WordPressは開けないがそれ以外のページはオープンできる.だが,動作は完全ではない.かなりひどい文字化けが発生するページがある.

    image

    C:\xampp\apache\binにはphp.iniがある.一通りチェックしてみたが影響しそうなtころは見当たらなかった.C:\xamppをxampp 2007とリネームした.xampp-windows-x64-7.4.2-0-VC15-installerというのをダウンロードしてあるのでこれをインストールしてみる.これはBitnamiというサイトが配布しているもののようだ.⇒インストールできた.というかここまでは前にやっている.PHPのバージョンは7.4.2だ.これならWordPressが開ける.WordPressを開こうとして「データベース接続確立エラー」になった.まぁ,これは当然だろう.

    XOOPSをlocalhostにしたところ,

    Parse error: syntax error, unexpected ‘new’ (T_NEW) in D:\XOOPS\core\XCube_Root.class.php on line 496

    のエラーになった.確かにこれは前にも出ている.このときは「XAMPPのバージョンが新し過ぎるということになるかもしれない」という仮定の下で動作可能なXAMPPのバージョンを探して一応動作させることには成功したのだが…XOOPSは現在も使われているはずだから,最新版と差し替えることも考えられる.

    XOOPS Cube Ver 2.2 というのがある.XOOPS X というディストリビューションもある.こちらの方が何かと使い勝手がよさそうなのでこれを試してみよう.legacy-stable.zipを解凍してできたlegacy-stableをDドライブにコピーしてXOOPS2.2とリネームした.DocumentRootを”D:/XOOPS2.2/htmlに指定して以下の画面が出た.

    image

    ⇒で進んで以下のエラーが出た.

    Deprecated: Function get_magic_quotes_gpc() is deprecated in D:\XOOPS2.2\html\install\class\textsanitizer.php on line 86

    Deprecatedというのは非推奨という意味だから,障害にはならないだろう.XOOPS2.2はPHP 5,MySQL 3.23xxで動作可能となっている.インストールに入る前にデータベースをあらかじめ準備しなくてはならない.

    データベースがphpMyAdminで読めるようになった

    xampp\mysql\dataに2007-08-28 XOOPS update\MySQL5.0\dataに格納されているxoopsフォルダをコピーしてその内容をphpMyAdminで読み出せるようになった.ただし,現状ではルートユーザでパスワードなしの状態になっているの状態になっている.xoopsの中に入っている41個のテーブルはすべて開くことができたが,空のテーブルもある.usersには1個しか登録がない.

    しかし,まだブラウザでXOOPSを開くことはできない状態になっている.これは実行時に以下のエラーが発生しているためだ.

    Fatal error: Unable to connect to database in D:\XOOPS\class\database\databasefactory.php on line 34

    XOOPS\mainfile.phpではユーザIDやパスワードを設定しているが,これを「ルートでパスワードなし」としてみよう.出た!

    image

    ログインもできた.

    image

    ただしいくつかエラー/警告が出ている.

    1. Module File for pico Not Found
    2. Warning [PHP]: Cannot modify header information – headers already sent by (output started at D:\XOOPS\kernel\module.php:207) in file D:\XOOPS\modules\legacyRender\kernel\Legacy_RenderTarget.class.php line 25
    3. Warning [PHP]: Cannot modify header information – headers already sent by (output started at D:\XOOPS\kernel\module.php:207) in file D:\XOOPS\modules\legacyRender\kernel\Legacy_RenderTarget.class.php line 26
    4. Warning [PHP]: Cannot modify header information – headers already sent by (output started at D:\XOOPS\kernel\module.php:207) in file D:\XOOPS\modules\legacyRender\kernel\Legacy_RenderTarget.class.php line 27
    5. Warning [PHP]: Cannot modify header information – headers already sent by (output started at D:\XOOPS\kernel\module.php:207) in file D:\XOOPS\modules\legacyRender\kernel\Legacy_RenderTarget.class.php line 28
    6. Warning [PHP]: Cannot modify header information – headers already sent by (output started at D:\XOOPS\kernel\module.php:207) in file D:\XOOPS\modules\legacyRender\kernel\Legacy_RenderTarget.class.php line 29
    7. Warning [PHP]: Cannot modify header information – headers already sent by (output started at D:\XOOPS\kernel\module.php:207) in file D:\XOOPS\modules\legacyRender\kernel\Legacy_RenderTarget.class.php line 30

    picoはxoops_trust_pathには入っているが,XOOPS\moduleには入っていない.2007 SUMMER からコピーしてみよう.⇒うまくいったようだ.これだけで上のエラーはすべて消えた.

    image

    メインメニューにはホームとpicoだけが表示されている.ホームをクリックすると単に上の画面に戻るだけだ.管理者メニューからモジュールの管理に入るとALTSYSとprotectorのモジュールがないというメッセージが表示されている.上と同様に2007 SUMMERからコピーしてこのエラーも消えた.テーマはデフォルトの2つが入っているだけだ.登録ユーザは管理者のxoopsがいるだけだ.一応これでXOOPSとMySQLが初期化した状態を復元できたということになる.

    2007年11月にゼルコバの木ユーザ会が発足し,2010年5月にユーザ会クラブハウスオープンということになっているのでそれまでは冷たい森サイトで広報を行っていたのだろうか?XOOPSを仕込んでから公開まで3年も掛かっているとしたら,少し掛かり過ぎという気もしないではないが…ゼルコバの木ベータ初版のリリースが2009年4月だから,それまではゼルコバの木アルファだったので冷たい森をベースにしていたというのも頷ける.

    xoopsのアカウントを見るとメールアドレスとしてinfo@babalabo.blogdns.com というのが出てくるのでこの時期はむしろ自家サーバーを実験的に運用することが主眼だったように思われる.2007 SUMMER が入っているのはJ.BACKUP:/EXODUSだがこのバックアップは何かのクライシスに際して実施されたものと思われるが,時期はおそらく2013年の1月と推定される.作業ログはBLOGGERを使っていたようだ.EXODUSには冷たい森サイトのバックアップはあるが,ユーザ会サイトのバックアップは2007 SUMMERしかない.どういうことだろう?

    多分この時期にはユーザ会サイトは定期的にバックアップしていたためではないか?SHARED\AYANETという名前で冷たい森をバックアップしているが,動作するかどうか見ておこう.表紙は表示できるがリンクがWebサイト固定になっているためジャンプできない.内部に入ってしまえばすべて問題なく動作している.ただし,downloadボタンはbabalabo.blogdns.comからダウンロードするようになっているため動作しない.CGIも動作していない.xamppはcgi-binを持っているのでリンクを書き直せば動作可能だろう.

    image

    blogdns.comは自家サーバに外部からアクセスするためのホスト名でこのようなアドレスを無償で提供してくれるサービスがある.babalabo@blogdns.com はいまでも使えるようだが有償になっている.年間55ドルだ.自家サーバが使えると動作テストなどにも役に立つが不可欠ということもないだろう.一通り動作したところでxamppをDからCドライブに移しておくことにしよう.つまりサーバー機能とサイトイメージを明確に切り分けるようにしておきたい.

    xamppをCドライブに移して再度Setup_xampp.batを実行した.これでxampp_control.exeを走らせて問題なくlocalhostをブラウザで表示できる.ここで現在のサイトイメージをダウンロードしてローカルで表示できることを確認しておきたい.前に使っていたFTPクライアントはWinSCPだ.FFFTPというのもある.64ビット版もあるようだが,使い慣れたWinSCPにしておこう.

    もう何年もFTPを使っていなかったので不安だったがなんとか接続できた.サーバー名やパスワードはロリポのユーザ専用ページで確認できた.SFTPは使えない.現在サイトにアップしているファイルをすべてダウンロードしているが,2時間半でようやく3/4というところだ.あと50分掛かる.

    WESTERNDIGITAL社製のNAS製品でWD Cloud というのがあった.クラウドを使いたいがグーグルドライブは使い勝手が悪い.WD Cloud は無線HDの一種でWIFIで接続できるが,ネット上からもアクセスできるという特長がある.これはかなりおもしろい.USBポートも持っていて外付けHDを接続して拡張することもできる.

    WinSCPの転送が完了した.990MBで3時間以上掛かった.SFTPは使えなかったが,SSLは使えるようだ.開発機のDドライブにコピーしてlocalhost/WordPressで以下のエラーになった.

    Your server is running PHP version 5.2.3 but WordPress 5.3.2 requires at least 5.6.20.

    PHPの最新版は7.4.3のようだ.⇒どうもかなり難しい.PHPを更新するためにはそれに対応するApacheも更新する必要がある.そうなるともう一度XAMPPをセットアップしなくてはならないが,そこでインストールエラーが起きてしまう.

    データベースに接続できない,どうしたらよいか?

    ローカルホストのバックアップイメージとXAMPPのバージョンはほぼ一致していると思われるのだが,データベースに接続することができない.なにか設定に不備があると思われるのだが調整できるだろうか?もし手こずるようなら完全に開始地点まで戻って一から組み直さなくてはならないかもしれない…

    D:\xampp\mysqlにはMySQL5.0からINIファイルをコピーしている.この中のmy.iniを見ると

    basedir=”C:/MySQL5.0/”

    のようになっているのでMySQL5.0をCドライブの直下に置いてみた.ダメだ.何も変化しない.winmysqladmin.exeを起動しても開いてすぐに閉じてしまう.mysqlは最初にmysql\bin\my.cnfを見ているのでまずこれをチェックしてみよう.このファイルでは以下のような設定になっている.

    [mysqld]
    basedir=”D:/xampp/mysql”
    tmpdir=”D:/xampp/tmp”
    datadir=”D:/xampp/mysql/data”

    Driver 3.51 Not Found というエラーはネットにも情報がある.ODBCに関わるもののようで 3.51 というのはバージョン番号のようだ.windows\system32にはodbc32.dllというファイルはあるが,myodbc3.dllというファイルは見当たらない.mysql\binにはlibmysql.dllとmsvcr71.dllしかないのでとりあえずこれをsystem32にコピーしてみよう.ダメだ!setup_xampp.batを実行してみる.⇒以下のエラーを出して終了してしまう.

    Sorry, but … nothing to do!

    xamppはアンインストールしてあるはずなのだが…少なくともプログラムと機能にはアイコンは出ていない.どうもかなり厄介な話になってきたような気がする.OSを再起動して動作が多少変わった.xamppのコントロールパネルが開けるようになった.しかし,SQLMyAdminが閉じてしまうという状態には変化がない.

    ユーザからメールが入ってしまった!asikaga48 さんという方だ.いや,新規ユーザかと思ったが,古くからのユーザだ.2月18日発信 宛先はbabalabos@outlook.jpだ.Ver2.0.0.789 をWindow 10 Ver 1903にインストールしようとしてレジストリ登録でエラーが起きているというクレームだ.ともかく返事だけは書かなくてはならない.まず,このバージョンが安全なものかどうかをチェックしておこう.ネット復帰後にリリースしたものならひとまず安全だが…

    いや,どうもかなり古そうだ.V2.0.1.181が2016/11/16なのでそれ以前ということになるとすればネット遮断以前ということになる.ネット復帰は2018年12月8日だが,例のセキュリティ上のトラブル(babalabos@zelkova-tree.net アカウントからのメールの大量発信)が発生したため一時的に閉鎖しているはずなのでそのころの記録はログには残っていないはずだから,メールをチェックしなくてはならないのだが…Yahooアカウントに2019年2月8日Tamoさんからメールが入っているがそれ以前は連絡用には使っていない.

    だとするとoutlookを使っていることになるが,outlook.comというアカウントはすでに廃止してしまっている.outlook.jpには通知は入ってくるが発信にはほとんど使っていないはずだ.実際ここに入っているのはFacebookからのお知らせだけだ.メイン機のLive Mailに入っていた.zekova-tree.netの公式アカウントを使って発信していたようだ.これによると,以下の10件をウィルス汚染ファイルと認定しているので,Ver2.0.0.789 は一応それからは外れていることになる.

  • SetupBetaForMe.msi
  • Ver 1.9.8.11
  • Ver 1.9.9.03
  • Ver 1.9.9.57
  • Ver1.9.9.63
  • Ver2.0.0.000~2.0.0.035
  • Ver2.0.0.087
  • Ver2.0.1.175
  • Ver 2.0.1.335
  • Ver 2.0.1.512
  • このメールは2018年12月17日に50人程度のパワーユーザにだけ送ったものでこの件に関してはまだネット上では告知していない.これらのウィルスは開発機ないしローカルバックアップ上で検出されたものであり,アップロードしたネット上のファイルが実際に汚染していたと断定することはできないが,ネット上のファイルはすでに全量破棄されてしまっているので確認することはできない.

    outlook.jpのメアドはマイクロソフトアカウント用に登録しているもので実際には使っていないが,タブレットで読み書きできるようにしようとしたが,「アカウントを作成しています」を出したまま抜けられない状態になってしまった.どうもパスワードを間違えたのではないかと思う.マイクロソフトアカウントのパスワードとoutlook.jpのパスワードは同じではない.一旦パネルを閉じるとすでにそのアカウントは登録されていてログインできた.⇒アカウントの作成ではマイクロソフトアカウントのパスワードが必要だ.申し込んだつもりはまったくないのだが,こんなものが入ってきた.

    So much, for so less! 24 Hours OFFER! をお試しいただきありがとうございます。 心より感謝いたします。毎年¥1,400の請求が発生するという.一週間試すのもよいが忘れてしまいそうなので速攻で止めておこう.これはどうもOneDriveのことのようだ.OneDriveは昔は無料だったような気もするが… どうもよく分からない.マイクロソフトのロゴが出ているがYellow Elephant Productionsという名前も表示されている.まぁ,このクレジットカードは使っていないのでこのまま放置してみよう.⇒キャンセルしたが,2020/1/16の請求は残っている…

    YK氏からは2019/07/13に第一報が入っている.このときはWindows 10 Update 1903 May をクリーンインストールしたマシンにインストールされているようだ.クリーンインストールではなくWindows Update の環境ではインストールできたという.今回のレポートは Ver 1909 だが,やはりクリーンインストールでインストールできなかったというものだ.どういう仕掛けになっているのか分からないがかなり厄介そうな話だ.何らかの理由でUpdate とクリーンインストールの動作が異なっているのだろう.Updateの場合には元のDLLが温存されているために動作しているものと思われるが,おそらくどちらのバージョンにも対応する版をリリースするのは難しそうな気がする.

    YK氏のレポートではこのような現象はネット上でも報告されていてMSVCP60.DLLをダウンロードしてインストールで解決したという記事があり,試してみたがMSVCP60.DLLはすでに存在していて置換することもできなかったとある.

    「MSVCP60.DLL」が原因でソフトをインストールできない。
    https://answers.microsoft.com/ja-jp/windows/forum/all/msvcp60dll%E3%81%8C%E5%8E%9F%E5%9B%A0%E3%81%A7/3f79d234-2070-439d-ba1b-d6b9c507d3ea

    というネット記事ではアプリインストール時に

    「ファイルに次のエラーが発生しました c:\WINDOWS\SysWOW64\MSVCP60.DLL. アクセスが拒否されました」。

    のようなエラーが出ているのでおそらく今回の件はまた別の問題であるように思われる.このDLLはCのランタイムライブラリでそれをローカルに配置することで解決しているようだが,いまだにこのような「DLLの配置問題」が解決していないのだろうか?いずれにしてもあれこれ手を拡げていると何をやっているか訳が分からなくなってしまうのでYK氏にはいましばらくお待ち頂くしかない.

    どうなっているのか?よく分からないがXAMPPのコントロールパネルは立ち上がっている。隠れているだけだ。しかし、このパネルからMySQLを起動できない。Svcにチェックが入っていてBusy…と表示される。チェックを落としても戻ってしまう。⇒動作が少し変化している。http://localhost でXOOPSのページが開くようになった。⇒MySQL5.0をCドライブに移しているが、むしろxampp/my.iniを直した方がよい。状況は変わらない。MySQLは走っていない。

    サービスとして登録されているのはMySQL 5.0だ。どこかでMySQLをサービスとしてインストールしたのが間違いのもとだったのではないか?もう一度インストールからやり直してみることにしよう。OSを再起動したらBrYNSvcのブロックが頻発するようになった、これは何だろう?BRLMW03A.DLLが反復ブロックされている。これはBrowny02というアプリケーションのようだ。MySQL Server 5.0をアンインストールした。

    BrYNSvcはブラザーのプリンタステータスモニタのようだ。BrYNSvcサービスを止めることでエラーの反復は収まった。もう一度作り直してみよう。2007 SUMMER には4つフォルダがある.このうち3番目の 2007-09-02 XOOPS Eclipse 導入版から xampp-win32-1.6.3a.zipを取り出してその中のxamppをドライブDにコピーする.また2番目の 2007-08-28 XOOPS update から,①data, ② XOOPS, ③xoops_trust_path をDにコピーする.Dドライブにあるそれ以外のフォルダはすべてEドライブに移してとりあえずDドライブをローカルサーバ専用とした.

    xampp\apache\conf\httpd.conf では DocumentRoot と <Directory>だけを変えた.XOOPS\mainfile.php では XOOPS_ROOT_PATH と XOOPS_TRUST_PATH を書き換えた.setup_xampp.bat で xampp をインストールすると apache, MySql, FileZilla, Mercury が使えるようになる.xampp のコントロールパネルから MySql を起動するとパネルが開いて閉じる.このパネルはタスクバーからShow me で表示することができる.Driver 3.51 Not Found のエラーが出ている.ODBCは使っていないので多分このエラーは無視してよいと思う.

    疑問点として Local Host Name,Local User Name, Local IP Address があらかじめ定まっているということがある.それぞれ FIREBIRD, babalabo,192.168.1.101 と表示されている.どこでこれらを設定しているのか?xampp フォルダの中にはFireBirdというテキストはかなり見かけるが babalabo は見当たらないところから考えると,どうもこれらの値はシステムから取り出しているのではないかという気もするのだが… このコンピュータのマシン名はFireBirdだし,ユーザ名は babalabo だ.IP も自動的に割り当てられたものではないだろうか?これらの値は読み取りだけでまったく設定することはできない.前に使っていた MySqlAdmin はもっと使い易いものだったような気がするのだが…あれはロリポップ!が提供しているサービスだったのだろうか?

    いや,ロリポでは「データベースはサポート範囲外」だから何もしてくれていないはずだ.出てきた!phpMyAdminだ.これはすでにxamppの中のコードなのでMySQL自体は動いていると考えてよいのではないだろうか?いや,phpMyAdmin はmysql とは独立/同列のカテゴリだ.以下のような警告が出ている.

    Your configuration file contains settings (root with no password) that correspond to the default MySQL privileged account. Your MySQL server is running with this default, is open to intrusion, and you really should fix this security hole.

    まずこれをフィックスしなくてはならない.

    昨日の続き:自家サーバー上でサイトイメージを復元する

    apache はすでに開発機上で走っているが,サイトイメージをブラウザで開こうとすると下記のようなエラーが発生する.

    Parse error: syntax error, unexpected ‘new’ (T_NEW) in C:\XOOPS\core\XCube_Root.class.php on line 496

    これはPHPのパーサーが出していると思われるのでもう少し古いバージョンのXAMPPを使ってみることにする.現在展開しているサイトイメージ XOOPS は2007年ころのものだ.2007-08-27 BACKUP-2007-SUMMER というバックアップにはapacheやMySQLが単体で入っているのでこれを動かしてみたい.できるだろうか?このフォルダをBACKUP-2007とリネームしてDドライブに置いてみる.このフォルダにはApache2.2のバイナリが入っているが,「インストール」は実行しなくてはならないようだ.msiが残っていれば自動でインストールできたかも知れないのだが…

    どうもかなりややこしい話になってきたような気がする.このパッケージの中のbinフォルダには10個EXEが入っているが,Apacheというアプリは入っていない.ApacheMonitor.exeを実行するとXAMPPのコントロールパネルが開いてしまう.ともかくXAMPPをアンインストールしておこう.

    バックアップの中にDownload Packageというのがあり,その中にAppacheのmsiが入っていた.しかし,これだけでは不十分だ.PHPやPerl, MySQLなども追加インストールしなくてはならない.このフォルダには12個もその種の圧縮ファイルが入っている.何かもう少しましな手はないものだろうか?

    2007-09-02 XOOPS Eclipse 導入版というフォルダにxampp-win32-1.6.3a.zipというのが入っている.これを解凍したフォルダにはsetup_xampp.batがあるのでこれでいけそうだ.コマンドプロンプト上で実行すると何度かカスペルスキーにブロックされたが解除して一応インストールできたようだ.その後もapache_start.batで数えくれないくらいのモジュールがブロックされている.何か一括して許可するような手続きはないものだろうか?ダメだ.いくらやっても切りがない.apacheのモジュールは77個もある.カスペルスキーを止めるしかなさそうだ.実行できた!ただし,もう一つmysql_start.batも実行する必要がある.

    image

    日本語を選択して以下の画面になる.

    image

    問題なく動作しているようだ.カスペルスキーの「安全なアプリケーションだけを実行」を有効にして動作を見てみよう.インストール済みソフトウェアおよび実行ファイルの解析が始まった.どうもかなり時間がかかりそうだ.⇒いや,意外に簡単に完了した.apacheとMySQLを再起動してもブロックされない.今後の作業はすべてDドライブでやることにしてCドライブに置いてあるXOOPSを移して,D:\xampp\apache\conf\httpd.confを書き換えてみよう.DocumentRoot “D:/xampp/htdocs”を”D:/XOOPS”に変えてみる。xampp_start.exeで以下のパネルが起動できる.

    image

    ブラウザ上でhttp://localhost を開いて以下のエラーになった.

    Warning: include(C:/XOOPS/include/common.php) [function.include]: failed to open stream: No such file or directory in D:\XOOPS\mainfile.php on line 102
    Warning: include() [function.include]: Failed opening ‘C:/XOOPS/include/common.php’ for inclusion (include_path=’.;D:\xampp\php\pear\’) in D:\XOOPS\mainfile.php on line 102
    Fatal error: Class ‘XCube_Root’ not found in D:\XOOPS\header.php on line 17

    これはXOOPSをCドライブからDに移動したためだ.mainfile.phpでXOOPS_ROOT_PATHを切り直さなくてはならない.今度は別のエラーが出た.

    Fatal error: Unable to connect to database in D:\XOOPS\class\database\databasefactory.php on line 34

    データベースを初期化していないのだから当然だが,どこで何を設定すればよいのか?mainfile.phpには

    • define(‘XOOPS_DB_PREFIX’, ‘dc2b69’)
    • define(‘XOOPS_SALT’, ‘6852d455’)
    • define(‘XOOPS_DB_HOST’, ‘localhost’)
    • define(‘XOOPS_DB_USER’, ‘xoops’)
    • define(‘XOOPS_DB_PASS’, ‘babalabo’)
    • define(‘XOOPS_DB_NAME’, ‘xoops’)
    • define(‘XOOPS_DB_PCONNECT’, 0)

    のような定義がある.まずいことに,このバックアップにはSQLのバックアップが含まれていないようだ.BACKUP-2007にはMySQL5.0というフォルダがあり,この中のdataというフォルダにはxoopsというフォルダがあり,その中に*.frm, *.MYD, *.MYIなどのファイルが大量に入っている.これらにアクセスできるようにすれば何とかなりそうだ.xamppの中のmysqlというフォルダもほぼ似たような構成になっているので,ここにdata\xoopsをコピーしてみることにしょう.

    なぜだろう?XAMPPのコントロールパネルが開けなくなってしまった.xampp_start.exeではコマンドプロンプトが開いてしまう.別にxampp-control.exeというものあるがこれを開こうとすると

    image

    のようなパネルが出る.xampp-control.exeを単独で起動することはできるが,パネルが表示されない…これはあとで考えることにして元に戻ろう.MySQLではmy.iniというファイルがあったはずだが,どうなっているか見てみよう.BACKUP-2007のMySQL5.0の直下にはiniファイルが7本入っているが,xampp\mysqlにはまったく入っていない.mysqlをリネームしようとしたが,拒否された.立ち上がっているタスクはないのだが…

    apacheとMySQLは独立に起動されそれらを統括しているのはXOOPSなのだから,mainfile.phpで対処できるのではないだろうか?いや,xamppをインストールしたときに位置関係は決まっているはずだ.仕方ない.MySQL5.0の中のiniファイルだけをmysqlにコピーしてみよう.ダメだ.そればかりかwinmysqladmin.exeが起動できなくなってしまった.このアプリは一度大きいパネルを開いたあとログインパネルを開くような動作になっていたのだが…実行すると

    Driver 3.51 Not Found

    というエラーをチラッと出して閉じてしまう.localhostnameがFIREBIRDと表示されるのも気になるところだ.スクリーンショットは取れた.

    image

    どうももう一度やり直してみるしかなさそうだ.