未分類

UbuntuのPHP+NginxでリモートなXdebug (2) Xdebugインストール

0

まずはPECLを使うためにphp5-devをインストールします。
binutilやら何やらも必要になるので、-yオプションを付けて一気に済ませてしまいましょう。

$ sudo apt-get install -y php5-dev

次に、PECLでXdebugをインストール。

$ sudo pecl install xdebug

aptでphp5-xdebugを入れても良いのですが、私はより新しいバージョンを使うためにPECLからのインストールを選択しました。aptで入れればbinutilなどのリソースを省けるので、どちらを選ぶかはお好みで。

2016/01/08 追記 ubuntu14.04では、-Zオプションが必要です。

$ sudo pecl install -Z xdebug

Xdebugをインストールしたら/etc/php5/mods-available/xdebug.iniを作成します。

xdebug.remote_connect_back=OnはすべてのホストからサーバのXdebugに接続できるようにします。
リモートデバッグするホストを特定の1台に限る場合は、代わりにxdebug.remote_host="nnn.nnn.nnn.nnn"と記述しておくと安全です。

FPM経由でXdebugを有効にするため、/etc/php5/fpm/conf.d/20-xdebug.iniからリンクを張ります。

$ sudo ln -s /etc/php5/mods-available/xdebug.ini /etc/php5/fpm/conf.d/20-xdebug.ini

設定は以上です。FPMを再起動します。

$ sudo service php5-fpm restart

ブラウザでphpinfo.phpを開き、Xdebugが有効になっていれば設定は完了です。

ubuntu-php-nginx-xdebug-02

UbuntuのPHP+NginxでリモートなXdebug (1) Nginx PHP対応

0

ローカルPCのEclipseからサーバ上のPHPをリモートデバッグします。
PHP環境はすべてサーバ側に置き、ローカルはEclipseとプラグインだけにして軽量化、PHPコードもサーバ上だけに一元化します。

UbuntuのバージョンはServer14.04。PHP5とNginxはaptでインストール済みとします。サーバーのIPアドレスはstaticです。

まずはFPM(FastCGI Process Manager)をインストールします。

$ sudo apt-get install -y php5-fpm

NginxをPHPに対応させるため、/etc/nginx/sites-available/defaultを編集します。
変更は3ヶ所。インデックスファイル名追加とサーバー名設定、それからコメントアウトされているPHPの設定を有効に。

server_nameにはサーバーのホスト名かIPアドレスを設定します。ここではひとまずIPアドレスで良いでしょう。この例では192.168.2.18です。

コメント中に「php.iniに”cgi.fix_pathinfo = 0;”と書け」とあるのでそのようにします。

設定確認のためのphpinfo.phpをNginxのドキュメントルート/usr/share/nginx/htmlに置きます。

設定が済んだらNginxとFPMを再起動します。
$ sudo service php5-fpm restart
$ sudo service nginx restart

ブラウザでhttp://hostname/phpinfo.phpを開き、下のような画面が表示されれば設定は完了です。

ubuntu-php-nginx-xdebug-01

TokyoCabinet/TokyoTyrantを使う (1) インストール

0

ubuntuならaptでインストールできますが、ここではソースコードからビルドしてみます。

ソースのtarボールをダウンロードしたら、適当なディレクトリに展開して一気にビルド&インストールしちゃいましょう。
まずはTokyoCabinetから。

configureで「bzlib.hが無い」と言われた場合は、libbz2-devをインストールします。
libbz-devで検索しても見つからないので注意してください。

続いてTokyoTyrant。

インストールができたら、サーバを起動して、データを格納してみましょう。

上記の例では、memcachedプロトコルを使って、キー’foo’の値として4文字のデータ’hoge’を格納しています。
‘^]’はCtrl+]です。

このままではその都度サーバを起動しなくてはならないので、起動スクリプトを作りましょう。

ttservctlの実体はttserverの起動スクリプトです。この例ではttservdという名前でリンクを張っています。
このスクリプトはなぜかttserverが配置されている/usr/local/binにパスが通っていなくて、OS起動時の自動起動に失敗するので、パスの記述を追加しておきます。
28行あたり。PATHの設定に/usr/local/binを追加します。

OSを再起動して動作確認してみましょう。

TokyoCabinetのデータはファイルに永続化されているので、再起動のあともさきほど格納したキーfooの値hogeが保持されています。

ubuntu add-apt-repositoryが無い

0

python-software-propertiesに入ってた。

ページのトップへ