失望の土曜日

先週の土曜日 午前中の外来診療を終え、午後にいそいそと自転車で「栄和堂」に向かいました ところが、その日は午後店じまいだったのです どうやらその夜に「栄和堂」の中で小規模な演奏会が開催されるための準備でお店を閉じていたのです がっかり とぼとぼと帰宅しました

ところで、何時も忘れてしますますので記録しておきます

$### pipそのものを upgradeする

$pip install --upgrade pip


$### pipでインストールした package全てを upgradeする

$pip-review --auto

何時も忘れてしまうので記録しておきます

 

今日は楽しい土曜日

今朝は朝から小雨です しかし歩いて病院に来るのも時間かかる(45分ぐらい)のて、雨の中傘もささずに自転車で来ました きっと午後は雨が上がっていることを期待したのです

今日は土曜日ですが朝から外来診療です でも雨だから患者さん来られるかなあ?

そして、その後は僕の解放される一時 「栄和堂書店・カフェ」での一人で開放された時間を過ごすのです 本に囲まれた中、少し濃い目のコーヒーを飲み、その日によってお腹が空いたと思えば、トーストサンドを食べ、そして何より重要なのは MacBook Proを立ち上げてインターネットにつなぎ kamakuralive.netの home page programの改良を行うのです

そのためにも自転車で通勤が必要なのです だって自転車の方が歩いて栄和堂に行くよりも何となくかっこいいでしょ?

そんなこと言ったって

そうさそうさ もちろん 分かっていますよー

今時 XAMPPや MAMPなんて古い! 時代は Vagrantあるいは Dockerだっ そんなこと分かっているけど、MacOSあるいは Windows10で動作する Dreamweaverで Web Program書いているので、それらの OSの中で Serverが動かないと駄目なのです

だから未だに MAMPなんですよ これって言い訳です

みんな XAMPPをやめて MAMPにしよう

ここ数日すったもんだしてようやく解決したのが、MacBook Proおよび、SurfacePro 4の上での local web serverの設置でした もちろん、各OSに備わっている Apacheなどを立ち上げて、正しく設定すれば Web Serverは立ち上がりますが、その後、MySQLに設定、PHP/Python/Rubyなどの設定 さらには phpmyadminの設定など、とてもややこしく複雑な操作が必要なのです

これらのややこしいことを一気に解決してしまうものとして、これまでは XAMPPの天下だったのです これで簡単に Apache/PHP/MySQL/phpMyAdminなど全て設定し立ち上げることが可能だったのです

しかし、状況は Windows10のある versionから変わりました 全体的に OSの securityがとても厳しくなったのです もちろん、これは MacOSにも当てはまる状況です その結果、僕の SurfacePro4-Windows10では今までの XAMPPが作動しなくなり、困惑したのです ここらへんの状況については ここに記載しました

そして、MacOS High Sierraになって、ついにこれまで MacOS Sierraで作動していた XAMPPが作動しなくなったのです それをここ数日の努力の結果克服したのです

結論は、現在自分のパソコンで Web開発するのであれば、XAMPPでなく、MAMPを導入して立ち上げること、XAMPPは uninstallした方が賢明、ということです

諸々がようやく解決

昨日来仮想Web Serverの立ち上げに苦労してきました そもそもの発端は、MacOSを High Sierraに upgradeしたからなのです

それと同時に MacBook Proで立ち上げていた XAMPPが立ち上がらくなりました 色々調べたのですが、どうやら XAMPPは十分に High Sierraとに互換性がとれていなようなのです

そこで次にとった手段は MAMPをインストールすることでした MAMPに関しては、High Sierraとの互換性が保証されていたのです しかし、そこからがまた困難なのでした IP address 127.0.01 Port 80が専有されているというエラーが出てくるのです

そもそも この IP/Portは httpとか Skypeにとられているものであり、僕はその両者を使用していませんでしたので、何故この IP/Portが専有されているのか理解できませんでした

そこで、Macで port scanを行ったところ、確かにこの IP/portは httpにより専有されてたのです 「まさか」と思い、ブラウザで localhostと打ち込むと、何と It Works!というリスポンスが戻ってきたのです

何と MacOS High Sierraでは defaultで起動時に 内製したApache Web Serverを立ち上げるのでした これにはまいりましたねえ

早速 $sudo apchectrl stop と打ち込みこれを止めました

そうすると、MAMPが無事 port 80で立ち上がったのです もっとも MAMPでは駄目で、先に MAMP-Proを立ち上げねばならなかっのです

もう一つの問題はどうやって 内製 Apacheの自動起動を止めるかなのです Sierraまではその方法がかかれているのですが、High Sierraでは未だ見つけることができないのです まあ時間が経てばユーザーが増えて、その方法を誰かポストしてくれるでしょう

さて、これで Macは片付いたのですが、同様のことを SurfacePro4 Windows10でも行いたかったのです 既に互換性のある XAMPPをインストールしてあったのですが、MAMPに挑戦しました

何と再び port80で競合したのです しかし、port scanかけてもそんなことはありませんし、Skypeも Apacheも立ち上げていません 試しに localhost と打ち込んでもエラーとなるのです

訳が分からず何回かしている内に、今度は port 80で Apacheが MAMPの中から立ち上がりました 何にせよこれで解決です

要するにココらへんの Web Serverを立ち上げる、というのは相当にややこしいことを行っているようです 自分の生半可な知識では理解できないような世界ですね まあ目出度し目出度し

ついに解決

色々とありました それはそれは長い旅路でした でもついに解決しました MAMPを立ち上げ、新たにDocumentRootも設定し、phpmyadminとの接続、PHPからの MySQLへの接続 その全てに成功しました

途中どんな作業をしてどのように考え、どのように解決してきたか 本当はその記録が大切なことは分かっていますが、とてもとても途中経過を記録していく余裕が無く、全て忘れてしまいました

まあ仕方ありません それでもようやく復旧です 素晴らしい

障害は立て続けに起こる

さてさて、MacOS High Sierraに 9月末に upgradeの報が流れました 暫く様子見ていたのですが、あまり悪い噂も聞こえませんでしたので、思い切って昨夜 download – installしたのです

快調に動いていました しかし しかし 大きな問題発生です 仮想Web Serverを立ち上げている XAMPPの componentの中で Apache Web Serverが立ち上がらなくなったのです これはある程度予想はしていました High Sierraの securityがきつくなっているからです

そこで、最新の XAMPPを downloadしたのですが、今度はこの中に htdocsなどがありません 一体全体どうやって phpmyadminを立ち上げたり、DocumentRootをどうやって設定すれば良いのか さっぱり分かりません Webで検索しても未だHigh Sierraが新しいからでしょうか 検索にヒットしません

そこで、もう一つのやり方である MAMPを download installしたのです 今度は DocumentRootの設定もあるし、htdocsもあり、さらには phpmyadminもOKです

これで解決と思ったらば、それでもWeb pageが作動しないのです

そうこうしている内に、何と www.kamakuralive.netのトップページが動作していないことに気づきました 突然の如くです多分ここ一日以内のことです

何でぇ~ です 何も悪いことしていないのにー です

悪いことには、仮想 Web Serverが立ち上がらなくなっているので MacBook Proでプログラムのテストができないのです あーーーーー 呆然としました

そして、どのようにすれば復旧に近づけるのか? それを考えました

最初に試みたのは、MacOSの本来の Unixで Apache/MySQL/PHPを立ち上げることです そこで High Sierra/Apache/phpmyadminで検索したところ、最新のものとしてここに行き着きました

これを見てやりました かなりスキルが必要です しかし しかし それでも localに立ち上がらないのです もうどん底です

最後の手段として 外付け diskに backupしているファイルをコピーしてそこから操作開始、ようやく復旧しました

しかし、正直未だに原因が良く分からないのです 攻撃かも知れませんね

まだ、MacBook Proに local web serverを立ち上げることに成功していません

馬鹿なことをやっていた 今気づいたけど

さて、kamakuralive.netは鎌倉ライブの Home Pageですが、先日までサーバーの切り替えですったもんだしたのです しかし、このクラウド・ベースのサーバーになり速度は明らかに早くなり安定しています

ここのプログラムは何回も言いますが、全てゼロから僕自身が html, css, jQuery, javascript, php, sql (mysql)を用いてプログラムを書いてきたものです

基本的にデータ構造は、たった3つのテーブルを使用するのみです それは、それぞれ dr_tbl, session_tbl, role_tblと名付けていますが、論理的にはお互いにリンク付けられ、関係データベースを形成しています

そのように作ったつもりだったのですが、今日突然気づきました それは database sqlのデバグをしている段階だったのです 何と role_tblsが session_tblを指すべき indexを作っていなかったのです!!!

もちろん今からこれを作るのは簡単ですが、そうなるとそこに関係したプログラムのみならず、既に入力されているデータそのものも変更が必要となります 参りました

そんなことをすれば膨大な時間がかかりますので、とりあえずはこのままにすることに決めました ほとんど不都合は発生しませんが、役割の時間帯重複を sqlで検出することが困難なのです

本日は朝からずっとプレゼン作成

本日は CVIT九州沖縄地方会があり、竹下くんが会長されます そこで仰せつかったのが あるDESについての Evening Seminar 50分というものです

相当に辛いです そのプレゼンを昨日から長崎駅前のホテルに篭って作っているのですが、やはり息抜きが必要です このような時にはやはりプログラミングですよね

この機会に克服せねばと以前より思っていた CSS3の FlexBoxについて勉強しました 具体的には

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <link rel="stylesheet" type="text/css" href="style.css">
  </head>
  <body>
    <div class="menu">
      <div class="item inner_menu">
       <div class="inner_item">
       	in1
       </div>
       <div class="inner_item">
       	in2
       </div>
       <div class="inner_item">
        12345
       </div>
    </div>
      <div class="item">
        2
      </div>
      <div class="item">
        3
      </div>
      <div class="item">
        4
      </div>
      <div class="item">
        5
      </div>
    </div>
  </body>
</html>

そして CSS3の部分がこれです

.menu{
  display: flex;
  flex-direction: column;
}
.item{
  text-align: center;
  width: 200px;
  height: 50px;
  padding : 2px;
  margin : 2px;
  background-color: white;
  border: solid 2px black;
  color: blue;
}
.inner_menu{
  display: flex;
  flex-direction: row;
}
.inner_item{
  text-align: center;
  width: 40px;
  height: 25px;
  padding : 3%;
  margin : 3%;
  background-color: green;
  color: white;
}

これをブラウザで表示すれば以下の如し

FlexBoxのテスト

思いどおりの表示が簡単にできました 素晴らしいですねえ これを何に使用するつもりなのか? と言えば、スマホでも見てくれよく鎌倉ライブの時間表が出てくるようにしたいのです お楽しみあれ

わーあいっ 解決

これまで VisualStudio Codeのメニューが日本語であっのに、updateしてからメニューが英語になってしまいました 「どうしてだろう?」「どうやれば治るの?」とか小さな心臓で悩んでいたのです

でも本日解決策発見しました ここに書いてありました この通りしたところすぐに日本語メニューとなりました 目出度し めでたし