PC設定覚書と雑記

サーバー運用とPC日記

php8にまだ対応してないアプリケーションへの処置

 先日、Netcommons3のヴァージョンを、3.3.4から3.3.5に上げようと、いつもの手順で作業していました。

しかし、今まで見たこともないエラーが・・・

しばらく考えていましたが、情報も得られずエラーメッセージも分からない。

でも、もう一度良く見てみると、

 

Error: ReflectionMethod::__construct(): Argument #2 ($method) cannot be null when argument #1 ($objectOrMethod) is an object
> #0 /var/www/html/vendors/cakephp/cakephp/lib/Cake/Console/Shell.php(358): ReflectionMethod->__construct()
> #1 /var/www/html/vendors/cakephp/cakephp/lib/Cake/Console/Shell.php(423): Shell->hasMethod()
> #2 /var/www/html/vendors/cakephp/cakephp/lib/Cake/Console/ShellDispatcher.php(222): Shell->runCommand()
> #3 /var/www/html/vendors/cakephp/cakephp/lib/Cake/Console/ShellDispatcher.php(66): ShellDispatcher->dispatch()
> #4 /var/www/html/app/Console/cake.php(35): ShellDispatcher::run()

 

phpの動きに問題?

このサーバーのphp環境は7.4だったはずなんですが、調べてみたらなんと8.1に上がっていました!

こまめにOSのアップデートをしていますが、その時にphpもアップデートされてしまうのは知りませんでした。

最初にOSインストールした時、phpのリポジトリ登録は手作業でやったんですが、この関係?

ここで、Netcommonsプロジェクトにメールで相談してみました。

手掛かりがなければ、phpを元の7.4に戻してみようと思っていました。

ところが何と!

嬉しいことに、すぐ返信が届いたんです!

「Netcommons3はphp8に対応させる予定はあるが、まだ見通しが立っていません」

「サーバーをphp7環境に戻して使って下さい」

この情報で、対処の見通しがつきました!

 

# update-alternatives --config php

このコマンドを実行すると、出力は、

 

選択肢 パス 優先度 状態
------------------------------------------------------------
* 0 /usr/bin/php7.4 74 自動モード
1 /usr/bin/php7.3 73 手動モード
2 /usr/bin/php7.4 74 手動モード

現在の選択 [*] を保持するには <Enter>、さもなければ選択肢の番号のキーを押してください

 

といった感じでメッセージが出るので、

希望するヴァージョンのphpを選んで番号を入力、Enterすれば使用phpの切り替えが簡単に出来ます!

この後Netcommonsのヴァージョンアップの作業を再度やってみたら、無事にアップデート完了しました!

Netcommonsプロジェクトの中島様、それからプロジェクトの皆様、

本当にありがとうございました!

WordPressサイトを作成

 デザイン性に優れた新しいウェブサイトを利用したい、という依頼がありました。

そこで、商業的なウェブサイトとしても利用実績が多く人気の高い WordPress でサイトを作ってみることにしました。

WordPress は CMS に分類される Web アプリケーションです。

オープンソースソフトで無料で利用できます。

 

構築の仕方ですが、

 ① Web サーバーを用意

  レンタルサーバーと契約、又は自前のサーバーを作る

 ② データベースを用意

  ①のサーバー内に Mysql 等のデータベース環境を用意して、WordPress サイト用のデータベースを作成する

 ③ WordPress 本体を WordPress.com サイトからダウンロードして、①のサーバー上で解凍し、ドキュメントルートに配置

 ④ このサイトにアクセスして、初期設定を完了させる

 

これだけです!

興味さえあれば、難しくはありません。

最初は、自宅の LAN 内で1からサーバーを作ってみるのもすごく面白いですよ!

IEモードを有効にするためにはIE機能は有効のままで

 MS社のインターネットエクスプローラーのサポートがついに終了となりました。

他のアプリケーションソフトと同様、サポートが終了されたソフトは使わないようにすべきでしょう。

ということなので、IE11の代わりに他のブラウザを使うようにすればいいんです。

ところが、このブラウジングソフトの機能を使用したシステムが多数存在するようです。

例えば、メーカー提供のシステムをネットワークアクセスして使うような用途では、ほぼWebブラウジングソフトが使われているんですね。

このような時、システムを作成するメーカーは、Windows標準だったインターネットエクスプローラー使用を前提とした設計をしたんでしょう。

さて、一般的には、WebブラウジングだけならブラウザソフトをEdgeやChrome等に変更すればいいだけで、

その時WindowsのIE11機能を無効にしておくと、より安全性が高まると思います。

 

 

 

 しかし、MS社Edgeのインターネットエクスプローラーモードを使おうという時は、

このWindowsシステム内のIE機能を有効にしたままでないと上手く行きません!

ちょっと注意して下さい!

Netcommons3サイトのアクセスURL変更

①Netcommons3サイト内のアクセスURLが書いてあるファイルですが、

インストールディレクトリ¥app¥Config¥application.yml です。

この中のアクセスURL(1か所)を書き換えます。

 

②DynamicDNS等の設定は前もって済ませておく。

(certbot --apacheによるLetsEncrypt設定で、外部DNSに新URLを行き渡らせておかないとダメ)

 

③次は、WebサーバーApache2の設定ファイルです。

まず、

#a2dissite 〇〇〇.conf

で、該当サイトへのアクセスを無効にしておきます。

また、

#a2dissite 〇〇〇-le-ssl.conf

も実行しておきます。

#systemctl reload apache2 

 

④新しいURL用の △△△.conf  を作成

 

⑤新URLアクセスを有効にする。

#a2ensite △△△.conf

#systemctl reload apache2

 

⑥LetsEncrypt自動設定

#certbot --apache

あとは対話形式で操作を選んでいけばサイトssl化が完了!

旧サイトのアクセスURL変更

 自分は、旧サイトで初めて Netcommons の運用を始めました。

その時のアクセスURLは、お世話になっている Mydns サイトで取得できるドメイン名を使うことになります。

その時、〇〇〇.mydns.jp より、〇〇〇.pgw.jp の方がかっこいい感じだと思い、ドメインはこれに決めました。

そして、ホスト名 www を付けて http://www.9monotaira.pgw.jp をアクセスURLとしたんです。

ずっとこれで運用していたんですが、ある時TREND.MICRO社の「サイト安全性チェック」で確認したところ、

この「安全」判定にはホッとしたんですが、

 

何と、サイトのカテゴリ評価は・・・

ん? 

 

出会い?!

出会い系サイト?!!

ヒドイでしょう?

汚名だー!

「評価内容変更のリクエスト」は当然しました!

これで一度は改善されたんですが、

サイトをSSL化したところ、またも「出会い」カテゴリに分類されてしまったんです!

 

 しばらく考えてみたんですが、これは、ドメイン名 pgw.jp を使うことに問題があるのではないかと思いあたりました。

例えばこのドメインが悪用された例があるとか。

試しに、存在しないサイト名 https://kakuu.pgw.jp を「サイト安全性チェック」で同様にチェックしてもらうと、

予想通り「出会い」カテゴリと診断されました!

これで状況が掴めました!

こんな訳で、旧サイトのアクセスURLをドメインも含めて変更できないか考えることにしたんです。

旧URLへのアクセスを新URLへ導くには?

 旧URLのアクセスがあった時への対応はどうしようか迷ったんですが、

対応しないというのも不誠実だと思い、調べてみました。

「Redirect」を使うというのは何となく分かっていたんですが、

旧URLを使ったサイトを用意する必要があるのではないかと思い込んでいました。

今回、時間がたっぷりとあったので、色々と調べたり考えたりしているうちに、

apacheの、旧URLに対応したヴァーチャルホストの設定ファイルに、Redirect設定を書き込めば?

と思いあたりました。

旧URL用httpアクセス設定ファイル 〇〇〇.confの中身は

 <VirtualHost *:80>
  ServerName 〇〇〇.pgw.jp
  Redirect / https://△△△.mydns.jp/
 </VirtualHost>

だけです!

このあと、LetsEncrypt自動設定を行います。

#certbot --apache

旧URL用の処理を選ぶと、旧URL用httpsアクセス設定ファイルを自動で作ってくれます!

 

さて、以上の設定を済ませて運用した結果ですが、

現状、これで旧URLアクセスを新URLサイトに導けているようです。

旧URLサイトの特定のページも、新URLサイトの同じページに誘導出来ています!

 

 

補足ですが、旧URL、新URL共に利用できるよう、

DDNSサービスサイト(MyDNS)に定期的に通知を送信し、DNS情報を更新し続けていただいています。

iOS、iPadOS 出来るだけ早くアップデートを!

 アップルは、スマートフォンなどの基本ソフト(OS)について

「ハッカーが端末に侵入する恐れのある安全上の脆弱性が見つかった」と発表しました。

 

アップルによると、

OSの脆弱性によって影響を受けるのは

「iPhone」の「6S」以降のモデル、

第5世代以降の「iPad」

「iPadプロ」のすべてのモデルなどです。  

 

アップルは、

ハッカーがこの脆弱性を利用して端末を乗っ取ったり、

悪意を持って作成されたWEBコンテンツを通じて端末に侵入することができる、

といった恐れがあるとしています。  

 

アメリカ政府のサイバーセキュリティ当局は

「ハッカーはこれらの脆弱性を悪用する可能性がある」

と警告していて、

できるだけ早く必要なアップデートを行うようユーザーに呼び掛けています。

8/20(土) 4:49配信

Windows10へのアップグレード

自宅にある数代のWin7機に、Win10へのアップグレードの通知が頻繁に来ていました。
ずっと無視していたら、カミさんに貸していたデスクトップPCがupdateでつけっ放しにしていたところ、やられました! (皆さんもやられたと思いますが!)
次の日に、何か変だから見てくれる?と言われ、確認したらWin10にされちゃっていました。
ところが、起動やソフトの動きは、ほぼ速くなっているようで、
この新しいカーネルはいいんじゃない? と簡単に、自分もWindows10に寝返ることにしちゃいました!
ただIE11は頻繁にフリーズするようになってしまい、MS Edge、Chrome等も併用してしのいでいます。
プリンタも含めたデバイスの認識や、常用しているソフトの動きに問題がなければWin10にしてしまった方がいいと思います。
実は、アップデートではなく、クリーンインストールする方法も見つけたので、
DAWマシン、ラジオサーバーはその方法で作成しました。
(これは2016年6月の記録です)