投稿日:2016年06月24日

0. 環境

[Laravel] 5.1

1. 問題

  • composer update を実行すると下記エラーが発生しました。

    Writing lock file
    Generating autoload files
    > php artisan clear-compiled
      [ErrorException]
      Undefined index: HTTP_HOST
    Script php artisan clear-compiled handling the post-update-cmd event returned with error code 1
    

2. 解決策

  • HTTP_HOST でソースをgrepし、 /app/Http/routes.php 内の下記箇所を修正しました。

    (修正前)

    $_SERVER['HTTP_HOST']
    

    (修正後)

    Request::server('HTTP_HOST')
    

3. 参考

投稿日:2016年05月26日

0. 環境

[CentOS] 6.4 (64bit版カーネル)
[PHP] 5.4.17

1. XORでトグル処理

  • 押すたびにON/OFFが切り替わるようなトグル処理を実装する場合はXORが便利です。

    6行目、11行目 : 「XOR 1」するとビットが反転する性質を利用します。(下記)

    XOR

    入力①0011
    入力②0101
    出力0110

投稿日:2016年05月26日

0. 環境

[CentOS] 6.4 (64bit版カーネル)
[PHP] 5.4.17

1. ORとANDで状態管理

  • 複数の状態や権限をまとめて管理したい場合、2進数が便利です。

    2-5行目 : 2進数の定数(10進数表記)を用意します。

    7行目 : ORでプログラミング言語を足していきます。

    Aさんが使える言語の位にビットが立つイメージです。(下記)

        0001 (PHP)
        0010 (Ruby)
    OR) 1000 (Perl)
    ----------
        1011 (Aさんが使えるプログラミング言語)
    

    11行目以降 : Aさんが使えるプログラミング言語は何か、ANDで問い合わせます。

    右端の位にビットが立っていれば結果がtrueになり、PHPが使えることが分かります。(下記)

         1011 (Aさんが使えるプログラミング言語)
    AND) 0001 (PHP)
    ----------
         0001 (PHPが使える)
    

投稿日:2016年05月14日

0. 環境

[CentOS] 6.4 (64bit版カーネル)
[Apache] 2.2.15
[Firefox] 46.0.1

1. Let's Encryptのコマンド変更

  • 証明書を更新した際、 「letsencrypt-autoコマンドはもう古いよ」という警告が出たので、更新したいと思います。

2. 更新作業(【】はマスク情報)

  • Let's Encryptがβ版の時はgit cloneして /usr/local/src/letsencrypt ディレクトリを作成しましたが、今回はそれとは別ディレクトリを作成します。

    # cd /usr/local/src
    # git clone https://github.com/certbot/certbot
    # cd certbot
    

    疑似実行したところ成功したようなので、証明書の期限が迫ってきたら dry-run なしで実行してみたいと思います。

    # ./certbot-auto renew --dry-run(省略)
      :
    Congratulations, all renewals succeeded. The following certs have been renewed:
    /etc/letsencrypt/live/【ドメイン名】/fullchain.pem (success)
    ** DRY RUN: simulating 'certbot renew' close to cert expiry
    **          (The test certificates above have not been saved.)
    

参考ページ

投稿日:2016年05月08日

0.環境

[OS] Mac OS X 10.11.4
[IDE] Xcode 7.3
[iOS] 9.3
[watchOS] 2.1

※MacとiPhoneはUSBケーブルで接続。
※iPhoneとAppleWatchはペアリング済み。

1.問題 (文中【】はマスク)

  • AppleWatch用のサンプルプログラムを実機で動かそうとしたら下記3つのエラーが出ました。

    エラー1

    A build only device cannot be used to run this target.

    No supported watchOS devices are available. Pair a device to run your application or choose a simulated device as the destination.

    エラー2

    Could not launch '【アプリ名】 WatchKit App' on 【iPhoneデバイス名】

    OS version lower than deployment target

    エラー3

    Can't install application

    【アプリ名】 WatchKit App.app cannot be installed on 【AppleWatchデバイス名】.

    The Info.plist in 【アプリ名】 WatchKit App.app specifies a minimum iOS version of 2.2 which is too high to be installed on 【AppleWatchデバイス名】.

2.手順

  • AppleWatch実機のOSバージョンとXcodeで指定しているターゲットバージョンが異なるようだったので、下記の変更を行ったら実機にインストールされました。

    プロジェクトナビゲーターで該当プロジェクトを選択。

    "Build Settings"を選択してターゲットを表示。(A-1、A-2)

    watchOSのバージョンを実機に合わせます。(僕の場合2.2→2.1に変更) (A-3)

    ("WatchKit App"の方を変更すると、"WatchKit Extension"の方も変わります)

    ターゲットバージョン変更

    いくつかサンプルプログラムを作ってて、なぜこれだけターゲットバージョンがデフォルトで2.2になっていたのか不明です。

【免責事項】

本ブログのご利用につき、何らかのトラブルや損失・損害等につきましては一切責任を問わないものとします。