秘密のフォルダー用に新たなBasic認証を作成

WordPress のディレクトリに専用のフォルダーを置き Basic 認証でオープンして phpInfo、APC、APCu 等の php ファイルやその他の資料を置いていたけど、いつの間にフォルダーをオープンする権限が無いので直接ファイルを指定してアクセスする方法となった。
いろいろ調べてみたところ、現在重宝しているプラグインの幾つかのコードが影響?、なので、新たに Basic 認証を作成して、そのフォルダー内に index.php を置いて資料一覧から呼び出すようにした。

以前と同様に「ApacheのopenSSLでBasic認証を作成して秘密のフォルダーを作る。」で htaccess、htpassword を作成して認証用のフォルダーに置き換えた。

index.php の設置(簡単な header & body、footer の作成)

 <html lang="ja">
 
 <head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width,initial-scale=1">
  <title>Hello PHP</title>
 </head>
 
  <body>
 <p> <?php echo "The List of Secret Files"; ?> </p>

 <?PHP
  $dirpath = "secretR/";	//ディレクトリパス
  $dirlist = dir($dirpath);
  while( $filename = $dirlist->read() ){
        //ファイルのみ表示
  if( (is_dir($filename) == false) && ($filename!=".." || $filename!= "." )     ){
  print("<a href=\"" . $dirpath . $filename . "\">".$filename."</a><br />\n"    );
    }
   }
  $dirlist->close();
 ?>

 <p> <?php echo "The End of Secret Files"; ?> </p>
 <p>    <?php include './footer.php';?> </p>
 </body>
 </html>

[footer.php]
<footer>
    © 2026 <a href="https://www. ~ ">  ~  </a> へ
</footer>

サブホルダー(secretR)を作成して資料を入れ直した。

※ 次のステップは、CSSJS を使ったウエブサイトのホームページらしいものを作成する予定。。。

MariaDB10.4.32からMariaDB10.6.10にアップグレード

一連の作業を振り返ると只々無駄な時間を費やした感じだ、とは言っても定かではないが、ヒントと言うか原因が少なからず分かってきたので、最終的に順序だてた手順でアップグレードできたようだ。

作業を始める前の準備で、既存の WordPress の管理画面から Plugins にある WP-Optimize を削除、Apache、Mysql と XAMPP control-panelを閉じて Mysqlフォルダ内にある wp_wp_404_detector と wp_wpo_404_detector.fm と wp_wpo_404_detector.ibd をさがして削除又は backup フォルダに移動。次に、/xampp/mysql フォルダを mysql_old などにリネームしてバックアップ。PC の再起動!

アップグレードの手順
新しい MariaDB10.6.10 を MariaDB サイトからダウンロードして XAMPP フォルダに解凍、「Mysql」 とリネームして配置。
 Mysql_10.4 のフォルダから
   /backup
   /bin/my.ini
   /data
   /scripts
   Mysql_installservice.bat
   mysql_uninstallservice.bat
   resetroot.bat
  を mysql フォルダにコピー
xampp の MySQL を start すると、エラーになるので data 配下のファイル、フォルダを削除して、再度コピーし直す。
   backup/mysql
   backup/performance_schema
   backup/phpmyadmin
尚、data 内の ib_logfile0、ib_logfile1、ibdata1 を Mysql を起動させるために別フォルダーに移動。
起動した後にパネル右にある「shell」をクリックして mysql を upgrade.
   mysql_upgrade -u root -p
/bin/my.iniを開いて [mysqld] 内にinnodb_force_recovery = 1 追記
innodb_force_recovery のみで起動しない場合 innodb_purge_threads を追加。
mysql を起動させてエラーチェック、すると ib_logfile0 と ibdata1 が無いと警告がでるので、移動させた ib_logfile0 と ibdata1 を data の中に入れる。

* 上記の手順で Mysql が起動したのでビックリ!一旦 STOP して、最後に Apache と mysql を起動後、phpMyAdmin で確認、及び WordPress の Login で確認して無事完了した。

※ MySQLのエラーを確認する中で、“Goast Table” があり、調べると WordPress のプラグイン WP-Optimize の「テーブルの最適化」とダブって MySQL の データテーブルがダブルの操作状態になり「使用中」と表示が出てエラーとなるのが原因?らしい。

phpMyAdmin5.2.1をphpMyAdmin5.2.3(最新)へアップグレード

ダウンロードした Zipファイルを解凍し、中身を XAMPPの phpmyadmin フォルダ(/xampp/phpmyadmin)に置き換えて、新しいフォルダには config.sample.inc.php があるので、これを config.inc.php にリネームして、中身が旧来のものと同じになるよう設定する。

MySQL、phpoMyAdmin、XAMPP などが稼働していたら全部停止する。
これまで使っていた「phpMyAdmin」フォルダ名を適宜変更  phpMyAdmin_old
phpMyAdmin 公式サイトから最新版をDL(ダウンロード)し、XAMPP ディレクトリに解凍して「phpMyAdmin」に変更。
旧「phpMyAdmin」フォルダにある「config.inc.php」を新「phpMyAdmin」フォルダにコピペするか、新「phpMyAdmin」フォルダにある「config.sample.inc.php」をテキストエディタで開き、書き直した後に保存する。

/* Authentication type */
$cfg[‘Servers’][$i][‘host’] = ‘localhost’;
$cfg[‘Servers’][$i][‘compress’] = false;
$cfg[‘Servers’][$i][‘AllowNoPassword’] = false; ⇐ trueに変更
/* User used to manipulate with storage */
$cfg[‘Servers’][$i][‘auth_type’] = ‘cookie’;
$cfg[‘Servers’][$i][‘user’] = ‘root’;
$cfg[‘Servers’][$i][‘password’] = ‘password’;
$cfg[‘Servers’][$i][‘extension’] = ‘mysqli’;
$cfg[‘Servers’][$i][‘AllowNoPassword’] = true;
$cfg[‘Lang’] = ”;
/* Advanced phpMyAdmin features */
* 以下全てコメントアウト

※ブラウザでphpMyAdmin(例: http:/localhost/phpmyadmin )にアクセスし、正しく動作するか、バージョンが更新されているかを確認して終了。

PHP8.1から最新のPHP8.3にバージョンアップ

今回のアップグレードは PHP 8.3.28、特に問題なくスムーズに設置できた。

アップグレードの手順 PHP For Windows公式サイト から、最新の Thread Safe (TS) 版の Zip ファイルをダウンロード。 
XAMPPコントロールパネルからApache、MySQLなどを「Stop」させ、コントロールパネル自体もクローズ。 
既存の /xampp/php フォルダを php-8.1にリネームして保存。
新しい「php8.3.28」をディレクトリに解凍して php リネームして設置。
旧 php8.1 の php.ini を、新ディレクトリにコピーして試す。
アップグレードの注意事項1.互換性の問題?、旧バージョンの php.ini でエラーが出たので、新しいバージョンに付属する「php.ini-development」を php.ini に、旧バージョンの php.ini の内容で再設定した。
2.コマンドプロンプトを起動して PHP のバージョンが新しいものに変わっていることを確認(php -v) 。 
3.続いてXAMPPのコントロールパネルからApacheを再起動、すると以下のエラーが出た。「SSL_CTX_set_post_handshake_authがダイナミンクリンクライブラリ /xampp/php/ext/php_curl.dllから見つかりませんでした。」、このエラーの原因は curl 絡みの問題なので、php/libssh2.dll のコピーを /xampp/apache/bin/libssh2.dll へ置き換えて解決した。
※いろいろ調べたところこのエラーは、curl ライブラリが SSH 通信のために「libssh2.dll」を必要とするために発生するようだ。

メモ)XAMPP Apacheモジュールとして動作させて利用する場合、必ず「Thread Safe(TS)」のアップグレード版を選択する。

追記) PHP公式サイトでアナウンスがあり、php8.3.28 のバッチバージョン php8.3.29 をダウンロードして、早速差し替えた。

不足分のファイルとフォルダーは php8.3.28 から
* php.ini  コピー
* extras の browscap.ini と ssl 以外のフォルダー  コピー

珍しい現象かな?、コマンドプロンプトでトラブル発生!

Let’s Encrypt 発行の SSL 証明書更新が可能だというメールが届いた。早速、管理者でコマンドプロンプトを開いて更新すべく ディレクトリ/Certbot/bin と打ったが?原因不明、使えない状態だった。

 

電源入れてすぐF11キーを連打して[オプションの選択]画面を起動します。
[トラブルシューティング]をクリックします。
[詳細オプション]をクリックします。
[コマンドプロンプト]をクリックします。
管理者のコマンドプロンプトが起動します。

* ディレクトリ/Certbot/bin へ移動できたので、Windows 画面から再度試した。

タイプミスが無いように何回もチェックしたが?とにかく更新できたので一安心!

原因不明のMySQLにエラーで、XAMPPでStartできない時

 

Windows のシャットダウンや再起動する際に起きる MySQL の Start の OK! 、だけどサイトでは 「MySQL の接続エラー」でWEB 接続が不可。いろいろ調べたが。。。

【今回復旧させた操作】
1 \data 内のファイルを新たにフォルダー作成して全てのファイルを移動
2 \backup 内のファイルを \data へコピー
3 XAMPP→MySQL 起動を確認(ここで起動できないようなら別に原因がある)
4 \dataディレクトリ内の mysql、performance_schema、phpmyadmin、test ファルダ以外のファイルを削除
5.移動したフォルダーにあるファイルの内、ibdata1、my.ini ファイルを移動
 (ibdata1 は DB との接続にかかわるファイルなので、必ず移動したファイルで置き換え)

Windows の「管理イベントの要約」で MariaDB でエラーが起きてることなので、原因不明の MariaDB エラーとなった感じで破損したのが標準の DB だったのか?、とにかく上記の操作で復旧できた。

MySQLでエラー発生、原因つかめず。。。

昨夜、サイトの気になる個所を修正したので、今日の朝 WordPress&MySQL のデーター保存のため Xampp Control を閉じて Windows の再起動と起動、さぁ始めようとしたが。。。MySQL だけがスタートしない。phpmyadmin の config.inc.php も MySQLの my.ini も問題なし、MySQLのエラーログをみてもエラーの発生個所が不明。

 

昨夜コピーした data で入れ替えをしたが。。。ダメ! 最後の手段で8月中旬 Xampp 丸ごとメモリーカードに保存した MySQL の data と phpMyAdmin を入れ替えて Xampp Cantrol の MySQL を無事スタートさせることができた。

2度の障害が発生、後にも先にも Windows の OneDrive の更新&共有?による不都合だろう?と思われるので、停止も中止もできない状態だ。

自宅サーバーに不都合なOneDriveの更新&共有?に関して

Windows 11 pro を 24H2 へアップデート後、度々更新&共有?に関する催促が表示されるので乗り気でなかったが。。。

 

)案の定、サーバーに支障が発生、MySQL のデータ部分のファイルだろうと思われるので、先日前のデータを入れ替えて事を脱した。
)Microsoft 関連のソフト&フォルダーに関しては問題が発生しないが、他のソフトに支障が、例えば秀丸エディタIrfanView64 へ保管した画像、Becky!ver.2 等々の情報が丸ごと消えた。頻繁にメモリーカードなどに保存したデータを PC に戻して事を脱した。

今のデスクトップPC が自宅サーバーの役割をしてるので更新&共有?すべきでなかったと少なからず後悔、面倒だけど PC の起動&再起動後は 必要な時以外は OneDrive を停止又は終了にする。

ある日突然ウェブサイトに問題発生!

公開してるウェブサイトが問題を起こした。原因は Xampp Control で MySQL がストップ!した。最新の data のを入れ替えたが、だめ! サイトを巡って調べたが該当する答えを見つけることができなかった。


又 Xampp 8.1 のインストール? その前にと phpMyAdmin を確認すると config.inc.php の内容に問題があることが分かった。再インストールの際に修正した config.inc.php が消えて original のものになっていた。又、MySQL の my.ini も確認すると修正した部分が消えて original のファイルになっている。何故だ~!!!!と思いつつ両方を再修正した。

xampp-control を管理者として実行して apache と mysql をスタート、ウェブサイトは何事もなく表示された。

phpMyAdminでWordPressの一覧を簡素化

phpMyAdminのwordpressのテーブルを簡素化すると、各項目に「status ok!」の表示が出るので気にすることなく見過ごしていた「Table does not support optimize, doing recreate + analyze instead 」と言うメッセージについて調べてみた。

「Table does not support optimize, doing recreate + analyze instead」とメッセージが出てくるのは、InnoDBのテーブルをOPTIMIZEしようとしたときに、内部的にはOPTIMIZEではなく、ALTER TABLEで対応を行なっているので、再度テーブルを作成して、インデックスを作り直している。そのため、その処理の記録として、該当のテーブルはOPTIMIZEはサポートしていないけど、代わりに再度テーブルを作成していることのメッセージを表示している。MySQL 5.1.27以降のテーブル最適化では、optimize tableは正常に実行できている。そのため、statusでOKが出ていれば、問題なく完了との事。

※XamppのMySQLはInnoDB テーブルなので OPTIMIZE TABLE の代わりに ALTER TABLE … FORCE が実行されて、出力としては「 Table does not support optimize, doing recreate + analyze instead 」というメッセージが出力される。

TOP

Copyrighted Image