投稿

ラベル(Apache2)が付いた投稿を表示しています

キーボード修理

イメージ
前回 調子が悪くなったと書きましたが、部品が手配できて時間が取れたので直しました。 茶軸のスイッチを購入 Cherryの茶軸は 10個で1,399- ということで購入。 本当は1個で充分なんだけど、仕方なく残りは予備部品として保管。 作業手順 キーボードの裏側ネジを3箇所外します。 左右と中央の丸シールの下。 左右はパッドを貼っているので、少しめくって外します。 (あとで綺麗に戻るので心配なしです) ケーブルが出ている方は、スッと外れ、手前(下側)は、内部に爪が有るので、ピックやカード、マイナスドライバなどで少し隙間を開けるようにして広げれば外れます。 自分は親指の爪で空きました。 今回は「E」が調子悪いので、該当のピン2箇所をハンダ吸いで綺麗に取り除いて、裏側から引き抜いて完了。 基板にしっかりとどのキーかがプリントされているので分かりやすいですねぇ 入手した新品の茶軸を差し込んでハンダ付けします。 この時点で動作確認が可能になるので、直したキーとその周辺が正しく入力できるのをチェック。 問題なく、無事に動作しました。 最後にカバーを取り付けて完了! 残ったのは9個の茶軸…。 今回の費用 Cherryの茶軸10個セット :1,399- キーキャップ引き抜き工具 : 475-  ちなみに10個セットには、簡易引き抜きがついてきますが、ちゃんとしたもののほうが楽に作業できます。(昔買ったのに、どこかに行ってしまったので再購入)  ということで、1900円ほどで完治しました。  手間賃考えると買ったほうが安いかも(笑)

PHP でなぜかjsonエラー

イメージ
外部サーバ上では動作  サーバに設置されているコードをテストしていて、おかしなエラーが出ることに気づいた。 Message: Call to undefined function json_encode() って、何で?って感じ…。 今回、新たに立てたVPSでは、Ubuntu20.04 + Apache2 + PHPで問題なく動作している。 その前のサーバも、同様な構成で動作している。 いつも使っているLocalマシン上で動作しない。 気持ち悪いし、テストできないので、原因追及をする。 このマシンだけは、2年前ほどに新規に調達したマシンで、当初よりUbuntu18.04で運用。 昨年20.04にdist upgradeしたマシン。 Cleanに入れてはいないので、その影響かも…。 phpinfo()を実行すると、jsonの項目がない。 そりゃ、動かないよね。 そこで、端末から念の為、入れてみる。 $ sudo apt install php7.4-json パッケージリストを読み込んでいます... 完了 依存関係ツリーを作成しています                状態情報を読み取っています... 完了 php7.4-json はすでに最新バージョン (7.4.27-1+ubuntu20.04.1+deb.sury.org+1) です。 アップグレード: 0 個、新規インストール: 0 個、削除: 0 個、保留: 0 個。 おや?入っているという。 $  sudo apt list | grep json php-json-schema/focal,focal,now 5.2.9-1 all [インストール済み、自動] php-json/focal,focal,now 2:8.0+91+ubuntu20.04.1+deb.sury.org+1 all [インストール済み] php-services-json/focal,focal,now 1.0.3-1build1 all [インストール済み] php5.6-json/focal 5.6.40-57+ubuntu20.04.1+deb.sury.org+1 amd64 php7.0-json/focal 7.0.33-...

apacheでSSL利用時の再起動

SSLを利用している場合 自前でサーバを立てて、SSLの認証取って、利用できるようにしている。 標準的な設定方法に従って作業すれば、設定は難しくない。 例えば、以下のような方法で簡単に設定できる。 (読んで分からない人には、簡単ではないと思うけど・・・) https://jp.globalsign.com/support/server/03.html ところが、この方法だと、apacheを再起動する際に、 秘密鍵のパスフレーズを要求される。(上記サイトにもうっすら書いてあるww) まあ、起動しっぱなしで運用することがほとんどだとは思うけれど、パスフレーズを忘れると、起動できなくなる。 また、スクリプトを通して、再起動やらが実行できない。 コンソールで作業しても、パスフレーズを入力する時間(5秒程度だとは思うけれど)は、apacheが完全に停止した状態になってしまう。 ということで、SSLを有効にしたまま、再起動を自動で行いたい。 設定していない場合 環境はcentOS6.5+apache2です。 例えば、再起動を行うとこんなようなメッセージが表示され、パスフレーズの入力を促されます。 正しく入力すれば、無事起動。 # service httpd restart httpd を停止中:                                            [  OK  ] httpd を起動中: Apache/2.2.15 mod_ssl/2.2.15 (Pass Phrase Dialog) Some of your private key files are encrypted for security reasons. In order to read them you have to provide the pass phrases. Server myservername:443 (RSA) Enter pass p...

apacheのSSL設定(マルチドメイン時)

本来の目的は… 仕事の関係でteamで作業を行う予定があり、グループウェアを入れようか、どうしようかと迷っていた時に、ownCloudが良さそうに感じた。 そこで、apt-getでちょろっと入れてみたら、結構いい感じなのでいくつかテストして、実運用にと思ったけれど、仕事で使うんだし、暗号化しておく必要はあるわなぁと…いうことで、SSLの設定をしようとしてハマったのでメモメモ…。 現在の環境 vpsを借りていて、ディスクには余裕があるし、常時動いているので共有場所には最適なのですよ。 WEB関係としては、apache2+BINDで運用。 ドメイン1:aaa.info(主ドメイン) ドメイン2:bbb.jp(別ドメイン) ここまでは、問題なく動作している。 ownCloudをapt-getで入れたら5.0系だったので、本家の6.0系を入れることに。 PC用のクライアントは無料だけど、モバイルのクライアントアプリは100円なのよね〜。実際使ってみると、Dropboxより融通が効いて、とってもいい感じですなぁ。 容量は自分で決められるし…。WebDAVでもアクセスできるし、カレンダーもあったりして…。 設定作業1 apacheのモジュールを調べると、ssl関連がちゃんとあるので、簡単じゃんと思ってやってみる。 # a2enmod ssl これで、mods-avaiableにあるssl関連が、mods-enable配下にリンクされ、機能するようになる…はずだった。 # service apache2 restart エラーは出ないが、httpsでaaa.infoに接続してみると、エラーが返ってくる。 アクセスログを見ると www.abc.info:443 xxx.yyy.zzz.aaa - - [06/Jun/2014:10:22:03 +0900] "\x16\x03\x01" 501 297 "-" "-" いままでに、見たことのないエラーが出ている…。 httpでのアクセスは問題ないことから、SSL関係の設定ということは分かる。 エラーログを見ると [Fri Jun 06 10:22:0...

PHP+sqliteでcoud not find driver

イメージ
前回からの検討内容… DBを使ったアプリを作成する依頼があったので、内容を検討。 ターゲットとなる環境が厳しいので、いろいろと検討し、そろそろ決めることにした。 クライアントが古めで、アプリを入れて動かすのは故障時のリスクが高すぎる。 何せ外部に接続していないXPマシンが1台含まれており、メモリが512MBと超遅め。 壊れるまで使いたいという希望。 3台のクライアントで利用するのだけれども、扱うデータは担当者別で同時に同じデータを触ることはない。 要はアプリは1種類で、データは3種類になるという縛りがある。 そのうちの1台が古いXPということなので、最低のマシンで動作するようにしないといけない。 そこで、当初LibreOffice上のBASE+マクロ(BASIC)で構築しようと思ったけれど、XPマシンに入れて快適に動きそうにない。 VB or VC# or etc.+SQLiteも検討したが、Microsoftに縛られたくない。 ということで、Linuxサーバ(内部向け)の上で、SQL+PHPで構築して、ブラウザで利用という事で進めることにした。 テスト環境を準備 通常なら、Virtualboxでサーバを構築して、その上で作業をするのだけれど、今回は14.04が出たばかりなので、検証を兼ねて14.04にUpgradeしたノートPC上を作業環境にしてみる。 まずは、apacheのインストール。 $ sudo apt-get install apache2 動作確認で、開いてみると「お!ぉぉ!!!」今までの殺風景な it worksではなく、洒落た画面になっていた。 ついでに、Firefoxも最新のものに更新したので、chromeみたいなタブになっていて、何だか違和感ww 一応スクリーンショットを撮ってみた。 ぱっと見た感じはchromeのようだけど…。確かにFirefoxなんだよね〜。 検索窓が別に用意されているけれど、アドレスバーの欄に入力しても検索してくれて変な感じ。 続いてphpのインストール $ sudo apt-get install php5  本当に、楽になったもんだ。依存する必要なモジュールは勝手に入れてくれるし…...

BINDの設定

イメージ
ネームサーバが無くては話にならない ということで、bindをインストール。 # apt-get install bind9 インストールは簡単だけど、設定は慎重に行う必要がある。 /etc/bind/ に設定ファイルがあるので、追加変更を行う。 /etc/bind/named.confに自分のドメインの設定を追加する。 include "/etc/bind/named.conf.options"; include "/etc/bind/named.conf.local"; include "/etc/bind/named.conf.default-zones"; include "/etc/bind/named.conf.mydomain"; ←追加 でもって、named.conf.mydomainにzoneを記述。 zone "xxx.jp" {   type master;   file "/etc/bind/db.xxx.jp";   allow-query{ any; };   allow-transfer {     210.172.129.81;   }; }; zone "196.7.157.in-addr.arpa" {   type master;   file "/etc/bind/db.196.7.157";   allow-query{any;}; };  xxx.jpは自分の取得したドメインを記述。fileは単なるファイル名なので、同じでなくてもいいのだけれど、あとで訳がわからなくなるので統一しておく。 セカンダリdnsはお名前.comのを利用する。 マニュアル(Q&A)によると、2nd.dnsv.jp(210.172.129.81)を使えということなので、transferの許可を与えておく。 あとは、db.xxx.jpと逆引き用のdb.196.7.157を書いてやればOK。 今回は、IPが1つだけだし、サーバも全部共用させるので、wwwもmailもnsも同じマシンを指すように設定。 再起動をかけて、ロ...