ConoHa のオブジェクトストレージの一時的なオブジェクト公開 URL (Temporary URL)を PHP を使って生成する

ConoHa ObjectStorage Temporary url API document

ConoHa のオブジェクトストレージには、一時的にオブジェクトを公開する場合に便利な Temporary URL 機能があります。

この機能を使うメリットは、下記が挙げられます。

  • web publishing と違って全体に公開する必要が無い
  • 指定した期間が過ぎると無効化される
  • キー、時間、オブジェクト名から URL を生成するので、URL を改ざんされてもアクセスできない

オブジェクトストレージ自体は、接続元 IP 制限などはありませんが、一段挟むことでそのようなことも実現可能です。

URL を生成する処理について、API リファレンスには、Python のサンプルしか載っていませんでしたが、ウェブサイト内で呼び出す場合、PHP の方が使い勝手が良いので、作成してみました。

“ConoHa のオブジェクトストレージの一時的なオブジェクト公開 URL (Temporary URL)を PHP を使って生成する” の続きを読む

PHP 7.4 に更新しました。

PHP 7.4

このブログで利用している ConoHa の VPS ですが、2019年11月にリリースされた、PHP 7.4 に更新してみました。

現在のバージョンの確認

# php -v
PHP 7.3.12 (cli) (built: Nov 19 2019 10:24:51) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.3.12, Copyright (c) 1998-2018 Zend Technologies

7.3.12 を利用していました。

“PHP 7.4 に更新しました。” の続きを読む

PHP 7.3 に更新しました。

PHP 7.3.1 phpinfo

このブログで利用している ConoHa の VPS ですが、2018年12月にリリースされた、PHP 7.3 に更新してみました。

すでに、WordPress の推奨環境も 7.3 になっています。

    To run WordPress we recommend your host supports:

  • PHP version 7.3 or greater
  • MySQL version 5.6 or greater OR MariaDB version 10.0 or greater
  • HTTPS support

About » Requirements — WordPress

“PHP 7.3 に更新しました。” の続きを読む

PHP 7.2.8・7.2.9 で WordPress など MySQL 8.0 に接続する PHP が動作しなくなる件の対策法

nginx An error occurred

PHP 7.2.8 or 7.2.9 にアップデート後、WordPress で運営しているこのブログが表示されなくなる問題で大変ご迷惑をおかけいたしました。

現象

PHP 7.2.7 から、PHP 7.2.8 にアップデートすると、WordPress のサイトがエラーとなりました。
“PHP 7.2.8・7.2.9 で WordPress など MySQL 8.0 に接続する PHP が動作しなくなる件の対策法” の続きを読む

ConoHa で運用している PHP が重いので php-fpm をチューニングしてみた

ConoHa の 1GB VPS でこのブログを運用しています。

最近、このブログの編集などで、少しレスポンスが悪いかな?と思うことがあったので調べてみました。

Mackrel で確認

このサーバーは Mackerel で監視を行っています。
メモリのグラフを見るとこの通り、メモリを使い切ってスワップが発生していました。

2/12 に下がっているのは、サーバーの再起動を行ったためです。

ConoHa の VPS は SSD なのでスワップを使用してもパフォーマンスがそれほど下がりませんが、対応が必要そうですね…

ログインして確認

top - 02:41:50 up 10 days, 10:52,  1 user,  load average: 0.23, 0.28, 0.16
Tasks: 146 total,   2 running, 144 sleeping,   0 stopped,   0 zombie
%Cpu(s): 13.5 us,  8.2 sy,  0.0 ni, 29.9 id, 48.1 wa,  0.0 hi,  0.0 si,  0.3 st
KiB Mem :  1016104 total,    71884 free,   850264 used,    93956 buff/cache
KiB Swap:  2097148 total,   864728 free,  1232420 used.    33756 avail Mem

  PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND
10151 nginx     20   0  515652  39488    156 S   0.0  3.9   4:02.43 php-fpm: pool www
11860 nginx     20   0  513224  38540   4884 S  22.6  3.8   3:58.29 php-fpm: pool www
11865 nginx     20   0  517312  36992    156 S   0.0  3.6   3:59.47 php-fpm: pool www
 8333 nginx     20   0  503768  36232   2664 S   0.0  3.6   0:41.22 php-fpm: pool www
 8336 nginx     20   0  505852  35632    120 S   0.0  3.5   0:43.09 php-fpm: pool www
11866 nginx     20   0  515904  34208    144 S   0.0  3.4   3:58.51 php-fpm: pool www
11871 nginx     20   0  515932  34172    148 S   0.0  3.4   4:03.82 php-fpm: pool www
11861 nginx     20   0  514520  34016    152 S   0.0  3.3   3:55.40 php-fpm: pool www
10184 nginx     20   0  514968  33976    144 S   0.0  3.3   3:59.71 php-fpm: pool www
11859 nginx     20   0  515620  33012   2800 R  13.3  3.2   4:01.27 php-fpm: pool www
 8334 nginx     20   0  502264  32828    156 S   0.0  3.2   0:42.17 php-fpm: pool www
11870 nginx     20   0  514280  32000    128 S   0.0  3.1   3:57.46 php-fpm: pool www
 1275 mysql     20   0 1592552  31976   1884 S   3.0  3.1  28:42.91 /usr/sbin/mysqld --daemonize
 8341 nginx     20   0  502420  31568     76 S   0.0  3.1   0:42.92 php-fpm: pool www
21073 nginx     20   0  505612  29876    140 S   0.0  2.9   2:24.17 php-fpm: pool www
10183 nginx     20   0  510160  19540    132 S   0.0  1.9   4:03.62 php-fpm: pool www
11874 nginx     20   0  506184  15704    136 S   0.0  1.5   3:55.12 php-fpm: pool www

php-fpm のプロセスが大量にあり、メモリを消費しているようです。

# free -h
              total        used        free      shared  buff/cache   available
Mem:           992M        857M         65M         72K         68M         18M
Swap:          2.0G        1.3G        729M

この通り、スワップ分を含めて2GB使っているようです。 “ConoHa で運用している PHP が重いので php-fpm をチューニングしてみた” の続きを読む