isLandcenter 非番中

ブログトップ | ログイン

openSUSE Leap 15.1 に nginx を入れたのでついでに、nginx 環境に php7 も入れてみました。

SUSE15 で動かす nginx HTTP, インストール

- 参考 -

次の文書が役に立ちました。

Install LEMP – Nginx, PHP, MariaDB and PhpMyAdmin in OpenSUSE

Install LEMP stack (Nginx, MariaDB, PHP) on OpenSUSE Leap 42.1
https://www.linuxbabe.com/linux-server/install-lemp-stack-nginx-mariadb-php-opensuse-leap-42-1




- php-fpm のインストール -

YaST/YaST2 >Software Management で "php7-fpm" を検索/チェックしてインストールします。

SUSE Linux 15(openSUSE15.1 Leap) で php7 on nginx_a0056607_16075322.png

自動的に追加のパッケージもインストールされます。

SUSE Linux 15(openSUSE15.1 Leap) で php7 on nginx_a0056607_16081925.png

- index.php を作ります -


opensuse151:~ # cat /srv/www/htdocs/index.php
<?php
phpinfo();
?>
opensuse151:~ #
opensuse151:~ # ls /srv/www/htdocs/
50x.html  index.php
opensuse151:~ #


- エラーログの書き込み先 -

opensuse151:~ # gedit /etc/php7/fpm/php-fpm.conf &

php-fpm.log の書き込み先を指定するため、error_log のコメントアウトを外します。/var/log/php-fpm.log に書き込まれます。

SUSE Linux 15(openSUSE15.1 Leap) で php7 on nginx_a0056607_16084468.png

- /etc/php7/fpm/php-fpmd/www.conf の書き換え -

opensuse151:~ # cp  /etc/php7/fpm/php-fpm.d/www.conf.default /etc/php7/fpm/php-fpm.d/www.conf
opensuse151:~ #
opensuse151:~ # gedit /etc/php7/fpm/php-fpm.d/www.conf &

デフォルトユーザ、グループのコメントを外して nginx を設定します。

SUSE Linux 15(openSUSE15.1 Leap) で php7 on nginx_a0056607_16091459.png

- cgi.fix_pathinfo を0に -

不要説もあるようですが php.ini の cgi.fix_pathinfo に0(無効) をセットします。php の古いバージョンではセキュリティリスクだったようです。過去の互換性の問題もあるようなで、別に有効にしておく必要もないようなのですから、教科書通り無効 (0) にしておくのが良いでしょう。

opensuse151:~ # gedit /etc/php7/cli/php.ini &
opensuse151:~ #

cgi.fix_pathinfo=0

cgi.fix_pathinfo boolean

SUSE Linux 15(openSUSE15.1 Leap) で php7 on nginx_a0056607_16093833.png

- デフォルトファイルに index.php を追加 -

/etc/mginx/nginx.conf にディレクトリ指定された時にデフォルトで開かれるファイル index.php を先頭に追加しておきます。

SUSE Linux 15(openSUSE15.1 Leap) で php7 on nginx_a0056607_16095850.png

- スクリプトのロケーションです - 

深く突っ込まれても困るのですが、 /etc/mginx/nginx.conf の "location...." のセクションはコメントを外し次の様に設定しました。


        location ~ \.php$ {
            root           /srv/www/htdocs/;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            include        fastcgi_params;
        }

--
fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
の行を
fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;

に変えます。これでドキュメントルートのスクリプトを見つけるようです。

FastCGI Params
https://www.nginx.com/resources/wiki/start/topics/examples/phpfcgi/


SUSE Linux 15(openSUSE15.1 Leap) で php7 on nginx_a0056607_16104745.png

ー nginx の再起動とステータスの確認 ー

YaST > Service Manager から、nginxphp-fpm を自動起動(On Boot)をセット、Start (アクテブ) にします。「コマンドライン命」であれば、 systemctrl コマンドで enable/start させます。

SUSE Linux 15(openSUSE15.1 Leap) で php7 on nginx_a0056607_16112306.png



opensuse151:/srv/www/htdocs # systemctl restart nginx
opensuse151:/srv/www/htdocs # systemctl status  nginx
● nginx.service - The nginx HTTP and reverse proxy server
   Loaded: loaded (/usr/lib/systemd/system/nginx.service; enabled; vendor preset: disabled)
   Active: active (running) since Fri 2020-04-10 14:34:46 JST; 7s ago
  Process: 3475 ExecStartPre=/usr/sbin/nginx -t (code=exited, status=0/SUCCESS)
Main PID: 3476 (nginx)
    Tasks: 2 (limit: 4915)
   CGroup: /system.slice/nginx.service
           ├─3476 nginx: master process /usr/sbin/nginx -g daemon off;
           └─3479 nginx: worker process

Apr 10 14:34:46 opensuse151 systemd[1]: Stopped The nginx HTTP and reverse proxy server.
Apr 10 14:34:46 opensuse151 systemd[1]: Starting The nginx HTTP and reverse proxy server...
Apr 10 14:34:46 opensuse151 nginx[3475]: nginx: the configuration file /etc/nginx/nginx.conf sy>
Apr 10 14:34:46 opensuse151 nginx[3475]: nginx: configuration file /etc/nginx/nginx.conf test i>
Apr 10 14:34:46 opensuse151 systemd[1]: Started The nginx HTTP and reverse proxy server.
opensuse151:/srv/www/htdocs #


- あれ?動かない.... -

と思ったらブラウザの VPN のエクステンションが有効になっていました。これにハマって二時間の無駄....
SUSE Linux 15(openSUSE15.1 Leap) で php7 on nginx_a0056607_16114819.png









by islandcenter | 2020-04-12 16:02 | SUSE | Comments(0)

Windows10 タブレットは、もう終わった技術なのです


- インターネット端末の Microsoft のシェアは30%を切っている? -

いうまでもなく Windows はPC分野の80数%のシェアがあり。10数%が Apple 残りが Linux という事は、いろいろなリサーチにある訳ですよ。

じゃぁ、インターネットのサービスを受ける、あらゆるデバイスの何パーセントが Windows なのか。スマートフォン、タブレットを含めれば、恐らく50%もないんじゃないでしょうか。多分スマートフォンが過半数なので、実際の「インターネットにおける Windows のシェア」はPCだけで3割もあればいいほうでしょうね。

PR


- 高価すぎて重すぎ -

Windows10 で最低限欲しいと思うスペックを考えると Core i3m とか i3yと言った Core 3 系のモバイル向けCPU が欲しくなるところです。ディスコンになった Atom 系SoCでは人を馬鹿にしている。正統派 Celeron でやっと使える感じがします。

Windows Update を問題なくこなせて、安定して使うには、最低64Gbのストレージが欲しい。しかし、「Window が動くタブレット」として考えるなら、256Gbのストレージが欲しくなってしまうでしょう。
そう考えると、自動的に12~3万円程度は最低限予算が必要なんですよね。

しかし意外と Core i3 系のCPUは人気がない。というかメーカーもこのクラスより、より高価な Core i5/7 系を売りたがる。こうなると安くても15万円コースですね。

キーボードもマウスもない Windows に15万円も普通払いません。しかし、「Windows デバイスを快適に使う」なら、オプションのキーボードとマウス、あるいはデジタイザペンは必須です。

それなら普通のクラムシェルか 2 in 1 ラップトップを私なら選びます。

2Gbのメインメモリ、32Gbのストレージ、Atom系 SoC では、「一応 Windows が動くタブレット」でしかなく、実際に使い物になるとは思えません。それでもWindowsがとりあえず動く環境にするには5万円前後するわけで、この値段で Android や iPad などの他社製タブレットならすコスコつかえるわけですよ。


- 処理が重すぎ -

大体、 Windows はフットプリントが重すぎて、タブレットには向かないぞ、という事だ。

GIGAスクール構想の実現について

1人1台のPCで教育のICT化を推進――日本マイクロソフトが「GIGAスクールパッケージ」を提供開始

Google、管理などの無駄な時間を減らし4万5千円以下で提供可能な「Google GIGA School Package」を開始

この勝負、どうみても Google に分があるんだが、どんなものでしょう。GIGA スクールパッケージに Windows は勝ち目がない。3万円の Android や Chrome タブレットを子供の Youtube 端末として使わせている親が、わざわざその倍の値段もして、華奢で壊れやすく安っぽい筐体の7万円の Windows タブレットを買うわけにはいかない。

私が、中高で「情報C(情報社会)」を教える立場だったら、間違えなく Windows10 タブレットは「アウトオブ眼中」です。Chrome Book で安く済ませて、余った予算を別に使う事を考えるでしょう。




マイクロソフト Surface Pro 6
[サーフェス プロ 6 ノートパソコン]
Office Home and Business 2019 
 Windows 10 Home





iPad mini Wi-Fi 64GB
 (最新モデル)





HUAWEI MediaPad M5 lite 8
 タブレット 8.0インチ
 Wi-Fiモデル




- 最悪の Windows Update -

スリープ解除して、通信が開始されるといきなり始まる Windows アップデート、いざ使おうとすると半日は使えないモバイルデバイス。それが Windows10 タブレットの宿命。

毎月のアップデートだけで、格安SIM二月分のパケット料金と貴重な時間を使いたくない

そんなものに普通15マン近い大金払いませんって。よっぽど Apple の iPad がひどくてもこんなにひどくはない。それにもっとシンプルで堅牢なハードウェアだし、軽くて高性能、高機能なのです。4万円も出せば普通に使えるし、128Gb程度のストレージがあれば、スチルカメラやビデオカメラ並みに使える。

それに iOS や Android, Chrome タブレットは機能を絞っただけシンプルで長時間のモバイル運用ができる。

- Windows だから求められるデスクトップアプリという呪縛 -

街を歩いていて、ちょっと調べ事をしたいと思えば、スマートフォンより小型のタブレットは実にいい選択なのです。

だけどそれが Windows タブレットとなれば、たとえタブレットと言えども、そこに "Windows らしさ" を求めるユーザ需要があるのですね。たとえタブレットであろうとも Microsoft Office が使えないと嫌だという、ユーザの奇妙なわがままを満たす必要があります。 Office アプリが必要であれば、当然マウスとキーボードもいるよね。

「いざという時 MS Office が使える」という事は、その「いざと言う時」のために普段使わないキーボードもカバンに入れておく必要があるわけです。そして充電用のアダプタとケーブル。

もう、 Windows10 なんて、一般家庭では「年賀状の印刷に年に一度使う」ためにある、というのが実態じゃないでしょうか。

- 銀行取引、金融機関では蚊帳の外 Windows 10は信頼されていない -

最近の銀行取引では、大体 iOS か Android のタブレットで最適化されたアプリケーションが頒布されていまして、もし Windows タブレットで、銀行振り込みしようと思ったら、別に iOS か Android が必要と言う矛盾、無駄。そもそも、銀行振り込み用のアプリがない、どころかワンタイムパスワードアプリもない。携帯電話必須という不自然さ。

ちなみに、 Windows ストアから片っ端に、大手都市銀行の名前を入れて調べると良い。一体、どこの預金者が、Windows OS を信頼しているんだろうってくらいに、ストアアプリは、銀行から嫌われています。頼むから Windows 端末から、預貯金の操作してくれるな、という位の総スカン状態なのですね。

Windows PCのブラウザ経由で決算してくれるなって位の嫌われようなのです。専用の exe アプリケーションすら配布されない。 Windows は金融機関から唾棄され嫌われているのです。

- モバイルOSから撤退した Microsoft -

ご存知の通り、 Windows Mobile はディスコンになり、既にサポートも終わっているわけで、 Microsoft としては、「マイクロソフト部屋に最後に残った幕内力士:Windows10」 をモバイルデバイスの切り札に残しているわけです。徳俵にかろうじて親指が残った崖っぷち張り出し大関、小錦みたいな状態。とてもじゃないけど、こんな危なっかしいOSを、フットプリントの小さな x86 環境にインストールして使う事自体、燃えないゴミにお金を投資するようなもの。

Windows10 タブレットは、もはや大相撲の中日に全廃している張り出し大関のようなものです。とてもじゃないけど、私は「Windows10 タブレット」には、「引退という引導」を渡すべきだとおもいます。



- Intel はブランドを整理すべきだ -

これほど、顧客が混乱しているのは Intel のブランド戦略が破綻しているからなのですね。もっとブランドを整理すべきです。「Celeron に名前を変えた Atom」 があったり、ほとんど使われない Pentium があったり、低スペック、低電圧版の Core i3/i3m/i3y なんてモデルがあるのはいかがかと思います。

その未整理な Intel のブランディング戦略にただ乗りしている、タブレットベンダーも責任を取るべきでしょう。

「2コア4スレッド搭載タブレット」とか言っても、中途半端な Atom 系 Celeron だったりするわけで、ほとんど消費者騙しです。2コア4スレッド搭載「パーソナルコンピュータ」であれば、最低でも Core i3 程度を想像するのですが、よーく仕様を見ると Celeron でしかも Atom 系コアだったりします。

Nxxxxx Celeron というNで始まる Celeron は、バチモノ系だそうです。

つまり、もう生産中止になって在庫がごっちょりある Atom 系 CPU の悪く言えば生産余剰した、リマーク品なのですね。 これを消費者に 「Atom とは別物」と言う、リ・ブランドして売りさばくのが Intel の今のやり方なのです。Celerorn 選ぶくらいなら AMD の Ryzen 系、モバイル SoC 選んだ方がよっぽどウソがない気がします。


- 使えない Windows タブレットの使い道 -

それでも Windows10 タブレットのニーズは根強くあるでしょう。それは「組み込み用途」です。こないだガス屋の端末見たら、Windows タブレットでした。 Windows 7 だったけど。

しかし、企業でこういった外勤者に何百台と使わせるとなると、コスト、持ち運びの容易さ、堅牢性、電池の持ち、アプリケーション開発の容易さなどを考慮すると、別に、保険のオバちゃんが Windows タブレットを使わなければならない必然性はありません。ブラウザ経由のアプリケーションであれば、別に何でもいいんです。

- まとめ -

ということで、Windows10 タブレットの将来性のなさ、致命的な欠点、わざわざ選ぶ理由がない事などをズラズラとまとめてみました。

それでも Windows10 タブレット買いますか? それとも Android や Chrome, あるいはPC化する iOS 搭載 iPad ? もうタブレット戦争では、ほとんど Windows 10タブは「アウトオブ眼中」、タブレットOSシェアのパイチャートでは「その他」に分類されるようになるでしょう。

202x 年 Windows 最期の日





by islandcenter | 2020-04-08 14:58 | Windows | Comments(0)

SUSE15 で動かす nginx HTTP サーバー

 かつては WEB Lamp, Linux + Apache + PHP だったのですが、最近 nginx で動いている(エラーページでわかる)をよく見る様になりました。何をいまさら感ですが、遅まきながら nginx on SUSE15 の環境を作ってみました。
PR

- nginx とは

 nginx(エンジンエックス、エヌジンエックス)は 軽量な HTTP サーバーアプリケーションで、最近は多くのVPSプロバイダや、アクセスが多いサイトで急激に利用されており、ほぼ apache と人気を二分しています。

- nginx が伸びている背景

nginx が急速にシェアを伸ばしている背景として、昔から指摘されてきた apache の "C10K問題"があります。

Web2.0の先にあるC10K問題

 簡単に言うと(簡単じゃないけど)マルチプロセスで動作する apache はセッションごとにプロセス番号 (PID) が割り当てられるのですが、PIDは 32,767 個しかありません。バックグラウンドでプロセスを消費する複雑な処理では、いくつものプロセスとメモリが使われるため、リソースを食いつくしてしまいます。

opensuse151:~ # cat /proc/sys/kernel/pid_max
32768
opensuse151:~ #

という事で、apache では最大 10,000 セッションを境に急激にパフォーマンスが低下するという問題が指摘されてきました。

実際、apache を起動するだけで、7~8のプロセスが動作しています。パラレル動作に強い Apache という事でしょうか。

- nginx はイベント駆動

マルチプロセスの apache に対して、イベント駆動型の nginx は、仕組みが単純で少ないメモリ、プロセスでリクエストを処理できる、というメリットがあります。

 反面、apache の様な複雑な処理のように、イベントが長時間占有するリクエストは不得意です。そこで固定コンテンツが多い単純なウェブサイトには向いていますが、ストリーミングや MySQL などとの同居には向いていないようです。

むしろアプリケーションサーバをバックエンドにして nginx をフロントエンドに分けて使う事が多い様です。たまに 503エラーを吐いているサイトがありますが、これはバックエンドで問題を起こしているのでしょう。

Apache と比較するとシリアル処理に強いという感じですか。

- SUSE 15(SLE/openSUSE Leap)における nginx

SUSE 15 では nginx はリポジトリに含まれているので、YaST なり zypper で簡単にインストールできます。もしなければ opensuse.org より1クリックインストールできる様です。

nginx - A HTTP server and IMAP/POP3 proxy server (1 Click install)

SUSE で 1 Click インストールができない場合、YaSTにないメニューを追加

YaST (yast2) による SUSE Linux のパッケージ管理, インストールと削除

ただし、apache と違って、nginx は YaST に統合されていないため、手動で細かな設定をしなければなりません。オペレーティングシステムをインストールする際に、オプションとして同時にインストールできます。
情報の少なさ、運用者の経験不足というのが nginx の最大の問題かも知れません。

SUSEでは apache の設定は、ほぼ YaSTでできる
SUSE15 で動かす nginx HTTP, インストールとファーストインプレッション_a0056607_16455579.png

- YaSTで nginx をインストール

# yast (テキスト版) もしくは # yast2 (GUI版) で Software Management > "nginx" をサーチしてチェックマークを入れてインストールします。

SUSE15 で動かす nginx HTTP, インストールとファーストインプレッション_a0056607_16475503.png

次に、 Service Manager から nginx を start して、 起動モードを on boot にトグルします。

SUSE15 で動かす nginx HTTP, インストールとファーストインプレッション_a0056607_16482858.png

/srv/www/htdocs に index.html を作成して、ブラウザからアクセスできたら、とりあえずOKです。

SUSE15 で動かす nginx HTTP, インストールとファーストインプレッション_a0056607_16485559.png


TOAMIT 東亜産業 ハンドジェル アルコール配合 洗浄タイプ

 日本製 500ml 3本セット

新品価格¥4,980から
(2020/4/7 13:03時点)




ボヘミアン・ラプソディ 

(字幕版)

新品価格
¥399から
(2020/4/7 12:01時点)




- 次にやること -

SUSE Linux 15(openSUSE15.1 Leap) で php7 on nginx

- まとめ

まずは 「Linux で HTTP サーバを」と考えた場合、 nginx は軽量でインストールも簡単で良い選択でしょう。SUSE の場合 Just enough OS (JeOS)版に入れて、フロントエンドに多用してみるのも良いでしょう。

ただ、奥深く追いかけてみると apache の様な「決め技」が中々見つからずに苦労します。nginx + WordPress とか、apache とのロードバランス化した平行運用など、色々応用が利く様です。

やっぱり nginx の教科書は必要ですね。





by islandcenter | 2020-04-06 16:58 | SUSE | Comments(0)