更新まず最初にHTTPサーバー(Webサーバー)を立ち上げます。phpMyAdminやPostfixAdminなどWebから設定するツールもあり、最初に立ち上げておくと便利です。旧サーバーのバージョンは2.2.3、今度のは2.2.15でメインバージョンは同じなのでさほど大きなちがいはないでしょう。そのまま立ち上げてみます。アクセスしますとApacheの初期ページが表示されます。編集とはいっても古いサーバーのをほとんどそのまま。アクセスすると...何も表示されません。今度は自分のディフォルトページが表示されるはずなのですが。それどころかなんとSELinuxの猛攻。しろ、...指示されたとおりにやるとそれはOKになるのですが、次々と別のが出てきてきりがありません。SELinuxに阻止されなくても期待のページが表示されません。2つ以上あるとだいたいわけがわからなくなるんだわ。ディレクトリはスクリプトを使ってしかもroot権限で旧サーバーのファイルをそのまま引っ張ってきているので、もしかするとラベル付けがちゃんとできていないのかもしれません。コンテキストラベルを付けなおします。/home莫大な量のラベル変更が表示されました。Managementでhttpd_enable_homedirhttp_read_user_contentの2つのブーリアン値をON。これで静的なページは表示できるようになりました。なっているのに気がつきました(HostnameLookupsがOnの場合通常のログではlocalhostとしか表示されない)。サーバー内部ではIPv6でアクセスしてるんだ。今後のことも考えてと今はIPv6を無効にはしていません。httpd.confを確認。127.0.0.1:80>........</Virtualhost>となっています。IPv4の設定しかしていません。localhost:80>........</Virtualhost>としたらOK。ここにはphpMyAdmin始め各種サーバー設定用ツールを入れておくので、アクセスできないと先へ進めません。localhostだとIPv4でもIPv6でもどちらでもいいみたい。IPv6を使うなら気をつけないといけないな。localhost6.localdomain6となっています。localhost6.localdomain6でした。同じlocalhostが2つのアドレスに設定されているのが悪さしていたのかもしれません。127.0.0.1:80>に戻してみると今度はOKです。jwhoisがIPv6を有効にしていると動作しないらしいことが判明。IPv6は無効にせざるをえないようなのでlocalhostはやめて元の127.0.0.1の記述で行きます。今のプロバイダ回線はIPv6には対応してないし、さらにお金を払ってまでIPv6対応の回線を入れる気もさらさらないので、結局IPv6を有効にしても実質あまり意味はないのでした。逆引きにlocalhostなどと設定してあるIPもあるし。222.254.など)とりあえず第一段階はここまで。実際にはhttpサーバーはMySQLデータベースサーバーと連携して動かすので、MySQLも動くようにしないと。MySQLを立ち上げ。MySQLphpMyAdminは無事立ち上がり、mysqlデータベースにユーザ登録などして準備OK。ブラウザを立ち上げて自分のホームページにアクセスしてみると案の定SELinuxに阻まれました。トラブルシューターの言う通り修正。1などのブーリアン値の変更やいくつかのポリシー作成・インストール等。それでも自分のホームページは表示されません。エラーログを見るといくつかの関数がないと。実を言うとホームページを作り始めて約10年。プログラムをいろいろ改良してきましたが最初のころ作った部分には今は非推奨だよー、もうじき使えなくなるよーと最近のマニュアルに書かれているものがありながら、不精をしてついそのままにしていたのでした。データベース関連の機能に最近削除されたものがあり、前回は強引な追加インストールで対応しましたが今回はプログラムを修正することに。忘れているので少し悪戦苦闘。今回の教訓:不精をしてはいけない。...で、何とか完了。実をいうと一番心配だったのがデータベースの互換性でしたが、データファイルをそのままコピーしてOKでした。だめだったらパックアップも容易ではないしどうしようかと心配していたのでした。(2014.2.17追記)怪というほどのものでもないけれど...実はしばらく運用して自前のアクセスログを見ていたとき、ごくまれに同じアクセスカウンターの値がダブって付与されているのに気がつきました。アクセスカウンターなんてなくてもいいようなものだから別に実害もなくしばらく放っていおたのですが、時折おこるのでやっぱり気になりますし、今後のプログラミングの参考にもちゃんと対策した方がいいかなと。アクセスカウントの値はカウンターファイルに保存されており、Cookieやアクセスログなどを参照して新規アクセスと判断すれば+1するというだけの単純な話。順番に処理されていればおかしくなるはずはありません。前のサーバーのCPUはシングルコア、今回はマルチコアです。シングルコアの場合多少タイムスライスしているとはいえ各瞬間に動いてプロセスはひとつだけですが、マルチコアの場合実際に複数ありえます。ほとんど同時のアクセスの場合前のプロセスの処理が完了しないうちに次のプロセスがアクセスカウンターを読み出してしまうことは充分考えられます。おかしくなったときのアクセスタイムは必ず秒単位ですが一致しています。