Digitra

LINUXサーバの設定やプログラムのことなどを中心にブログを書いています。

MacのPHPがぶっ壊れたときの対処

Macで、homebrewで色々とインストールをしていたら、AtomでPHPがおかしくなっているよとの警告が出てきたので、phpを叩いてみると、以下のようなエラーが出る。 $ php -v dyld: Library not loaded: /usr/local/opt/readline/lib/libreadline.7.dylib Refere…

tailコマンドで16進数エスケープされた日本語をターミナルで表示する

Apacheにデバッグログを出すときに日本語が、16進数エスケープされた状態になるので、どうにか日本語が読める状態にならないかなと思っていましたが、perlをパイプで使うことでtailしながら日本語がしっかり表示できました。 tail -f [logファイル] | perl -…

cronで1分以下の実行をさせる方法

sleepさせてから実行するプロセスを一気に作ってしまうことで実現します。 * * * * * for i in `seq 0 15 59`;do (sleep ${i} ; /path/to/script &> /tmp/script.log ) & done; 上の例だと、15秒おきに実行となる。 sleep 0 ; /path/to/script &> /tmp/scrip…

GoogleMapApiで地名と緯度経度を相互変換する

GoogleMapのAPIで地名と緯度経度を変換するAPIがあります。 今のところこのAPIはデベロッパーキーなどの指定がなくても利用できるようなので、以下のようなPHPのコードで簡単に変換することが出来ます。 地名から緯度経度を得る 第一引数:地名第二引数:検…

PHPでディレクトリ内のファイルをまとめて消したい

PHPでファイルを消すときにはunlink、ディレクトリを消すときにはrmdirを使いますが、ディレクトリ内のファイルをまとめて消す場合や、*でパターンで消したい場合は、 array_mapとglob関数を使って、消してあげましょう。 PHP: array_map - Manual PHP: glo…

iPhoneが突然電源が切れる問題は解決するのか

AppleがiPhone6Sが突然電源が切れる問題の交換プログラムが開始されたので、早速自分のiPhoneが対象になっているかを調べてみた。 iPhone 6s が突然シャットダウンする問題に対するプログラム - Apple サポート シリアル番号は、「設定」>「一般」>「情報…

MacでEclipseが起動しなくなったと思ったらiCloudのせいやった

MacBookAirでEclipseを使っているのですが、突然Eclipseを起動ができなくなりました。 ログを見ろとことなので、見てみると java.lang.NoClassDefFoundError: Could not initialize class jp.sourceforge.mergedoc.pleiades.aspect.resource.Translations と…

VisualStudio for Macインストールに失敗したゴミを消すよ

VisualStudio for Macのプレビュー版やて?よっしゃインストールしてやるぜ!MacBookAir(128GBモデル)のストレージの残量18G、いけるやろ!!と意気込んで、インストールを始めるものの、ま~サイズの大きいこと。インストール途中でストレージが足り…

Magsafeで充電がなかなかされないのだよ!

私の使っているMacBook Airは2011 Midモデル。 もう5年も前のモデルになるがOSはまだ更新対象になっているし、動作はそれほど遅いと感じない。 内蔵SSDが128GBなので万年ストレージ不足で悩ましいぐらい。 JetDrive欲しいが、そろそろXCodeなどのツールがこ…

perlのreaddirでのファイル取得順序がバラバラ?

バッチ処理で特定のディレクトリ以下のファイルをDBに取り込みをしていたのだが、 取り込む順序があるのにも関わらず、perl の readdirで得られたファイルの順序で取り込みをしていて不具合が発生していた。

No space left on deviceでApacheが起動できない

Sakuraのシンプル監視からSlackにサーバのApacheが止まったよと連絡が来てたのでサーバに入ってApacheの再起動をすると、 Apache start [OK] とは出るものの、psコマンドで確認してもプロセスは立ち上がらず。

EC2にNginxとPHP7で爆速環境を作る

ずっとApacheしか使ってなかったのですが、最近仕事でApacheが詰まりまくるので、前から気になっていたNginx(エンジンエックスって読むんだね)と、最近リリースされたPHP7が従来のPHPと比べて2倍ぐらい早いらしいので、Nginx+PHP7の環境をEC2(t2.micro)…

EC2でLet's Encrypt + Nginx を試してみる

Let's Encryptという誰でも無料で使えるSSL/TLS証明書発行サービスがPublic Betaを始めました。 https://letsencrypt.org/ 前回、AWSのEC2インスタンスでNgnix+PHP7環境を作ったので、この環境にLet's Encryptの証明書を入れてみます。

Unixtime日付変換ツール

仕事でUNIXTIMEと日付フォーマットの変換を頻繁に使う。 今まではUNIXTIMEでググって一番上に出てくるサイトのを使っていたけれど、作業上何個か変換後の結果を画面上に残していたいことが多いので自作してみた。

ローカルテスト環境でApacheのSSLを設定する

Apacheサーバでテスト環境作っていたら、Apacheの設定ファイルにSSLの項目追加しても動かない。

InstagramのURLからコンテンツのIDを調べる

インスタグラムのAPIを使ってコンテンツIDとコンテンツのURLなどの情報が取得できるのだが、逆にコンテンツのURLがわかっていて、そのURLのコンテンツがどのコンテンツIDと紐付いているのかを推測出来ないかを調べていたが、APIも無いしどうしたものかなと迷…

PHPでjson出力するときのheaderについて

JSON形式のAPIをPHPで作るときに毎度使うのでメモ残し。

Google Map API で地名から緯度経度を取得する

地名と緯度経度の入力サジェストを作るために、何か良いAPIが無いかを調べてみたところ、GoogleMAPのAPIが使えそうだった。

PHPで実行時間を同時に何箇所も計測する

PHPのプログラムのどこが遅いのかデバッグするときにブレイクポイントみたいに何箇所にも計測地点を設定したいことがある。PEARのBenchmarkというライブラリがあるようなのでそれを使ってもいいのだが、クラスや関数を跨いでいたりすると面倒なのでグローバ…

人間を宇宙に送り出す必要性

ギズの記事は機能性の高い宇宙服がどのようになっていくかって話だけど、そもそも人間が現段階で宇宙に行かないといけない理由は、人間の身体が宇宙でどんな変化を起こすかという臨床的なデータを出す以外には無いと思っている。 宇宙服のこれまでとこれから…

paypal月額課金のIPN Listenerの実装

Paypalの月額課金(定期購読)は、管理画面上でボタンのHTMLを作って、それを設置するだけで一応、ユーザから月額課金を実現することは出来るのだが、サービス側でこのユーザがこのコンテンツに月額課金してるよってってのは、IPN Listenerというサーバ側でP…

FileZillaがアップデートの度に調子悪くなるのでバージョンを戻す

MacでFTPやSCPをするためにFileZillaを使っている。 頻繁にアップデートがあるのだが、起動のたびにアップデートのダイアログが表示され、非表示に設定できない。 しかも、ご丁寧なことに置き換えアップデート用のファイルをDocumentsディレクトリ以下に勝手…

JavaScriptで月日を2桁表示にするスマートな方法

JavaScriptのDateオブジェクトのgetDateやgetMonthで月日を取得すると、0〜9の時は、0埋めされ無いデータになってしまう。 UnixtimeをDateの型に変換するツールを作った時に困ったので調べてみた。 0埋めのスマートな実装 桁数のlengthをチェックして0…