カテゴリー別アーカイブ: CentOS

(70007)The timeout specified has expired

PHPでAPIを作ったんだけれど
処理時間が60秒経過したところで
HTTPステータスコードが504で返ってきてしまって

エラーログを確認したところ、下記のメッセージが
(70007)The timeout specified has expired:~

httpd.conf に下記の1行を追加したら解決した
デフォルト(記述がない)と60秒みたい
Timeout 120

CentOS7にmariaDBの最新版をインストール

CentOS7で普通にmariaDBをインストールすると
バージョン5で古いので、せっかくなので
最新版を入れたいっ!意外と簡単!
だったのでメモメモ

リポジトリのインストール

あとはyumでmariadbをインストールするだけ!

あとはお決まりのコマンドたたいて終了

Centos7でmecabのmecab-ipadic-neologd辞書を使用

mecab-ipadic より mecab-ipadic-neologd のほうが
新語などに対応しているということで試してみる

yumで必要なものをインストール

mecab-ipadic-neologd をダウンロード&インストール

mecabrc ファイルの辞書のパスを変更する

例)/etc/mecabrc
辞書のディレクトリは、環境に合わせて設定する

Centos7 にglassfish4を入れる

SSDが壊れた。。。

とりあえず環境構築するときに
手順とか忘れてたので、
またなんかあったときのために
備忘録です

まずはjdkをダウンロード
https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
今回は、これを使った
jdk-8u191-linux-x64.rpm

上記ファイルをftpなりで該当サーバに転送して
rmpコマンドよりインストール

次に、glassfish4を持ってくる

glassfish を再起動してから
ブラウザで接続確認

dockerコンテナで systemctlコマンドを実行したい

dockerコンテナでCentos7の環境作って

例えばこんなコマンド

systemclt start mysqld.servise
などのような、「systemclt」を実行しようとすると
「Failed to get D-Bus connection: Operation not permitted」
みたいなメッセージで怒られる。
パーミッションがないのか??

調べてみたところ「–privileged」オプションをつけて
コンテナを立ち上げたあとに docker exec で入れば実行できるらしいのだけど
僕の環境だと、下記コマンド実行するとloginを求められて、
よくわからないことになった。。。

なので、SELinuxを無効にする方法を試してみたら
うまくいったので、今回はこちらを採用したよ

SELinux の状態確認

enforcing ・・・ 有効、アクセス制限あり
permissive ・・・ 有効、アクセス制限なし
disabled ・・・ 無効

無効にするには
/etc/selinux/config
上記ファイルの
SELINUX=enforcing

SELINUX=disabled
に変更

無効にした後に、下記コマンドを実行したら解決したよー

WebP対応

WebPに変換するコマンド

■cwebp
・インストール
yum install libwebp-tools

通常変換
cwebp sample.jpg -o sample.webp

可逆圧縮
cwebp -lossless sample.jpg -o sample.webp

圧縮率指定(デフォルトは75?)
cwebp -q 85 sample.jpg -o sample.webp

■ImageMagick
・使えるか確認
convert -list format | grep WebP

↓こんな感じで返ってきたらOK
WEBP* WEBP rw- WebP Image Format (libwebp 0.4.3 [0203])

使えなかったら、アンインストールして新しいバージョンをインストール

・インストール
yum install epel-release
wget http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
rpm -Uvh remi-release-6.rpm

yum install –enablerepo=remi ImageMagick7 ImageMagick7-devel

・再度使えるか確認
convert rose: rose.webp
identify rose.webp

↓こんな感じで返ってきたらOK
rose.webp WEBP 70×46 70×46+0+0 8-bit sRGB 906B 0.000u 0:00.000

・可逆圧縮で圧縮率を指定
convert image.jpg -quality 85 -define webp:lossless=true image.webp

Apache2でやったら、
Content-Type: audio/unknown
になった、、、

とりあえず、これを設定したら認識してくれた。

AddType image/webp .webp

・参考URL
https://github.com/vincentorback/WebP-images-with-htaccess

PHP7にアップデート

かなりのパフォーマンス改善がされたってことで
テスト用のサーバ(CentOS7)のPHPをバージョンアップしてみたよー

まずは、今まで使ってたphp5.4をサヨナラ

若干残骸が、、、なので下記コマンドでそれらともサヨナラ!

無事にキレイさっぱりしたら、改めてphp7をインストール

とりあえず、必要そうなphp、php-mbstring、php-mysqlnd あたりを入れておく。

ちゃんとインストールできたか確認

casperjsでitunesのURLに接続できない

casperjsはすごい便利で使える

と思ってたら、itunesの画面をキャプチャしようとすると

真っ黒に、、、もちろんHTMLソースも取れない、、、

どうやら、SSL Protocolが原因のようで

itunesはTLS 1.2を使用しているらしいのだが

PhantomJS のデフォルトのプロトコルは SSLv3とのこと

–ssl-protocol=tlsv1 (もしくはany)を付けてあげたら

ちゃんととれましたー