カテゴリー
FreePBX (Asterisk)

FreePBX のエラーログを解決する

参照しているファイルの作成

ERROR[1491] res_pjsip_config_wizard.c: Unable to load config file 'pjsip_wizard.conf'

# touch /etc/asterisk/pjsip_wizard.conf

参照しているフォルダーの作成

WARNING[3116] iax2/firmware.c: Error opening firmware directory '/var/lib/asterisk/firmware/iax': No such file or directory

# mkdir /var/lib/asterisk/firmware
# mkdir /var/lib/asterisk/firmware/iax

破損したシンボリックリンクの削除

ERROR[1482] sounds_index.c: Failed to stat /var/lib/asterisk/sounds/silence-30.gsm
ERROR[1482] sounds_index.c: Failed to stat /var/lib/asterisk/sounds/silence-5.gsm

# rm /var/lib/asterisk/sounds/silence-30.gsm
# rm /var/lib/asterisk/sounds/silence-5.gsm

カテゴリー
FreePBX (Asterisk)

FreePBX と NTT ひかり電話の接続

Asterisk は NTT ひかり電話と接続することができます。ただし、NTT からレンタルするルーターによります。

カテゴリー
制作・運営

macOS と Windows のファイル共有が遅い時

macOS と Windows のファイル共有には SMB 接続で行います。そのファイル共有をする時にパケットを署名しています。

そこで、署名を無効にすることでファイル共有を早くします。

カテゴリー
ウェブサイト制作

Use of undefined constant CURL_SSLVERSION_TLSv1_2 – assumed ‘CURL_SSLVERSION_TLSv1_2’

PHP のバージョンアップで、cURL を利用しているコードが次のエラーで停止してしまいました。

Use of undefined constant CURL_SSLVERSION_TLSv1_2 – assumed ‘CURL_SSLVERSION_TLSv1_2’

問題は、cURL で使う SSL を TLS 1.2 で接続するよう指定していた行でした。

curl_setopt($ch, CURLOPT_SSLVERSION, CURL_SSLVERSION_TLSv1_2);
カテゴリー
ウェブサイト制作

PHP 7.1 以降の json_encode で float の小数点以下の桁数について

API の変数の受け渡しによく使われる JSON 形式ですが、PHP 7.1 以降では、消費税率など float の浮動小数点数を json_encode で JSON 形式に変換すると、小数点以下が長くなってしまいます。

$json = json_encode(['tax_rate' => 0.08]);
echo $json

上記のコードを実行すると、tax_rate の値は 0.08 ではなく、小数点以下が56桁もある値に変換されてしまっています。

{"tax_rate":0.08000000000000000166533453693773481063544750213623046875}
カテゴリー
ウェブサイト制作

Laravel の Validator に全角・半角対応の文字数チェックのルールを追加する

Laravel 5.5 の Validator は、フォームの入力値などのチェックにとても便利ですが、文字数チェックをしてくれる max ルールは、全角文字を1文字としてカウントするので、全角を2文字としてカウントする文字数チェックのルールがありません。

そこで、Validator に新しいルールを追加します。

カテゴリー
ウェブサイト制作

MAMP の PHP をターミナルで使うために PATH を通す

macOS にはデフォルトで PHP がインストールされていて、ターミナルで php コマンドを使うとデフォルトでインストールされている PHP を使用します。php コマンドで MAMP の PHP を優先的に使用するには、MAMP の php にパスを通します。

.bash_profile の変更

MAMP の PHP にパスを通すには、次のコマンドを実行します。(*.*.* は使用するバージョン番号を入れます。)

$ export PATH=/Applications/MAMP/bin/php/php*.*.*/bin:$PATH

一時的に MAMP の PHP を優先的に使うのであれば、このコマンドを実行するだけでよいのですが、ターミナルで常に MAMP の PHP を優先的に使うときには、ユーサーのホームディレクトリーの .bash_profile ファイルにこのコマンドを追記しておきます。(.bash_profile ファイルがない場合は作成します。)

.bash_profile への追記が終わったら、次のコマンドで反映させます。

$ source ~/.bash_profile

使用する PHP の確認

使用する PHP を確認するには、which コマンドを使います。

$ which php
/Applications/MAMP/bin/php/php*.*.*/bin/php

実行結果に希望する MAMP の php が表示されるはずです。また、php -v コマンドでバージョンを確かめることもできます。

$ php -v
PHP *.*.* (cli) (built: XXX) ( NTS )
Copyright (c) 1997-20XX The PHP Group
Zend Engine vX.X.X, Copyright (c) 1998-20XX Zend Technologies
カテゴリー
制作・運営

Adobe CS6 のアップデートで失敗するときの解決策

Adobe Illustrator CS6 や Photoshop CS6 をアップデートは、Adobe Application Manager を利用しますが、Adobe Application Manager で「アップデートサーバーからの反応がありません。サーバーが一時的にオフライン状態になっているか、インターネットまたはファイアウォールの設定が間違っている可能性があります。」と表示され、アップデートに失敗してしまうことがあります。

Adobe Application Manager Error

カテゴリー
ウェブサイト制作

MySQL のコマンドで “Using a password on the command line interface can be insecure.”

MySQL のバージョンを 5.6 以降にアップグレードすると、今まで使っていた MySQL コマンド (mysql, mysqldump, mysqladmin など) で次の警告 (エラー) が表示されることがあります。

mysql: [Warning] Using a password on the command line interface can be insecure.
mysqldump: [Warning] Using a password on the command line interface can be insecure.
カテゴリー
制作・運営

Mac の拡張属性 (@) を削除する

macOS では、ファイルシステムに HFS Plus を使っていると、ターミナルでファイルリストを詳細表示 (ls -l) した時、拡張属性が付いているファイルにはパーミッションの右に @ が表示されます。

$ ls -l
-rw-r--r--@  1 xxx  staff       4186  8 21 17:18 File.text
カテゴリー
ウェブサイト制作

無料の SSL 証明書とレンタルサーバーまとめ

ウェブサイトの接続を HTTPS でセキュアにするため、無料の SSL 証明書を発行できるサービスを調べてみました。また、無料の SSL 証明書を利用できるレンタルサーバーも合わせて調べました。

カテゴリー
ウェブサイト制作

MeCab をインストールして MAMP の PHP で使う

プログラムで日本語の形態素解析をしてみたいと思い、MeCab をインストールしてみました。開発環境は MAMP で PHP を使っていたので、手順は MeCab をインストールした後、PHP から MeCab を利用するための php-mecab をインストールしました。