michihide's blog

技術メモおよび雑感

Laravelでサービスプロバイダを追加した場合の、引っ越しにおける注意事項

laravel 5.2 で開発中のプロジェクトの別環境を作ろうとして、しばらく悩んだのでメモです。作業手順は概ね以下の通りです: ソースツリーを git で持ってくる vendor 配下と composer.lock を消して composer install DB ユーザーと DB インスタンスを作成…

Apacheが起動できなくなった

CentOS7 でいろいろやってたら、ふと Apache が起動できなくなって10分ほど焦ったのでメモ。 [Wed Aug 19 16:07:31.191392 2015] [suexec:notice] [pid 14555] AH01232: suEXEC mechanism enabled (wrapper: /usr/sbin/suexec) [Wed Aug 19 16:07:31.238273 …

httpd(+php) で SEGV

CentOS7 上で動いている httpd が、ログローテーションに伴う再起動時に 落ちていました。"[abrt] full crash report" というタイトルのメールが 管理者宛に来ていたので見てみると、以下のようになっていました(抜粋)。 core_backtrace: :{ "signal": 11 …

TLS Support for openldap-2.4.x / php on CentOS7

やっと動いたので簡単にメモしておく。 前提 LDAP Consumer として動作中のホストに対して TLS Support を追加する。 証明書は例によってオレオレ。 Webサーバ用のワイルドカード証明書も取得済みだが、通信路の暗号化だけなら証明書の有効期限到達時の切り…

自動再表示の際の「フォームを再送信」ダイアログを抑制したい

リアルタイム監視のような用途の Web ページを作成する場合、 定周期(1分おきなど)で自動リロードするようにしておくと、 常に最新の情報が表示されて便利です。HTMLでやる場合は <meta http-equiv='refresh' content='60'> JavaScriptでやる場合は windows.location.reload();といった感じで実現</meta>…

Apache起動とCLI起動における、PHP の実行環境の違いを調べてみた

PHP

概要 項目 Apache(libphp5.so) CLI(/usr/bin/php) 備考 Server API Apache 2.0 Handler Command Line Interface php_sapi_name()で判定可能 Configuration File (php.ini) Path /etc /etc -c で制御可能 Loaded Configuration File /etc/php.ini /etc/php.in…

NetBeansでリモートデバッグできなくなった

最近はCakePHPで開発をしていますが、フレームワークをIDEなしで開発するのは(少なくとも自分には)非現実的だと悟ったので、デバッグはもっぱら Xdebug+NetBeansによるCakePHPのデバッグ の手順に従ってNetBeansを使っています。 今日 NetBeans を使ったら…

wp-cli 経由で W3 Total Cache のキャッシュを消す

ansible を使って、WordPress で書かれたちょっと大きめのサイトのテスト用ミラーのデプロイ手順を構築中。本番サーバからデータ全体をコピーして、デプロイ後に W3 Total Cache(w3tc) のキャッシュをクリアできると楽。wp-cli なるものの存在は知っていたの…

phpdbgでコアダンプ

最近はもっぱら、CentOS 6.x/7.x では php のリポジトリとして https://webtatic.com/ を使わせてもらっています。ここは最新版への追随が早いので助かります。 ただ今回、phpdbg を使おうとしたらちょっとハマったのでメモ。 ちなみに OS は CentOS 7 です…

鍼治療は痛くなくてオススメです。

うちの親父は、現役時代は盲学校高等部(高校に相当)の理療科教員として鍼灸マッサージを教えていました。理療科専門の教員免許としては、長崎県の第一号でした。当時長崎県内にあった鍼灸院は、そのほとんどが親父の教え子だったのではないでしょうか。鍼…

PHP5.3以降ならこんな感じ?

PHP

hotta@sandbox:~$ cat to_wareki.php format('Ymd'); if ($date >= 19890108) { //平成元年(1989年1月8日以降) $gengo = "h"; $delta = new DateInterval('P1988Y'); } else if ($date >= 19261225) { //昭和元年(1926年12月25日以降) $gengo = "s"; …

Cent6でISOイメージ作成

Linux上でCDの中身をISOイメージ化した際のメモ。 OSはCentOS6で、vShere5上のVMとして動いているもの。1.VMにクライアント側のCDを認識させる vSphere Client>仮想マシン設定の編集>CD/DVDドライブ>クライアントデバイス>OK vShere上部のCDボタンをクリ…

PHPでLM/NT Hash

PHP

Samba(+LDAP)でドメインログオンする場合、LDAP側にuserPassword以外にもNTPassowordとLMPasswordという属性を持たなければならない。 これらはmkntpwdというコマンドで生成することができるが、管理ツールを刷新する際、できればPHPで完結している方が望ま…

Adobe Flash Player セキュリティ

Google Chrome for Windows を使っていて、 http://business.nikkeibp.co.jp/article/life/20110106/217826/ というURLを開こうとしたら(正確にはレンダリングが終わった後) というダイアログが出た。表示されている 2mdn.net というドメインを whois で引…

CLI起動とcron起動の違い

PHP

$ cat _server.php #!/usr/bin/php atlas.example.com [TERM] => xterm [SHELL] => /bin/bash [HISTSIZE] => 1000 [NLS_LANG] => JAPANESE_JAPAN.AL32UTF8 [SSH_CLIENT] => 10.28.1.30 62948 22 [SSH_TTY] => /d…

独自ドメインからGoogle Groupsに投稿できない

独自ドメイン example.com の MX を Gmail に向けて、すっかり Google 様に 依存した生活になったが、まだ一部問題を抱えていた。このドメインに所属 するアドレス a@example.com から、Google Groups の(たぶん)すべての グループに投稿ができないという…

おまけ

関係ないけど、文中の</pp>(半角)は不要です(直し方がわかりません(><))

リポジトリサイトの利用

m-hotta@celsior:~$ sudo yum -y install yum-priorities m-hotta@celsior:~$ wget http://repos.net-newbie.com/newbie.repo m-hotta@celsior:~$ sudo mv newbie.repo /etc/yum.repos.d/ m-hotta@celsior:~$ sudo rpm --import http://repos.net-newbie.com…

サーバー側の動作確認

m-hotta@gaia:~$ ls -l /var/www/repos/ 合計 12 lrwxrwxrwx 1 m-hotta wheel 3 1月 20 15:23 5 -> 5.4 drwxr-xr-x 4 m-hotta wheel 4096 1月 20 15:25 5.4 -rw-r--r-- 1 m-hotta wheel 1690 1月 20 15:13 RPM-GPG-KEY-newbie -rw-r--r-- 1 m-hotta wheel 36…

リポジトリ作成&パッケージの登録

m-hotta@gaia:$ mkdir -p /var/www/repos/5.4/{,S}RPMS m-hotta@gaia:/var/www/repos$ ln -s 5.4 5 m-hotta@gaia:~$ cp rpm/RPMS/i386/samba*3.4.5* /var/www/repos/5/RPMS/ m-hotta@gaia:~$ cp rpm/SRPMS/samba-3.4.5-1.src.rpm /var/www/repos/5/SRPMS/ m-…

リポジトリ公開用サイトの作成

m-hotta@gaia:~$ sudo mkdir /var/www/repos m-hotta@gaia:~$ sudo chown m-hotta /var/www/repos/ m-hotta@gaia:~$ grep -Ew -C 1 Include /etc/httpd/conf/httpd.conf # #Include conf.d/*.conf - NameVirtualHost *:80 Include conf.d/*.conf m-hotta@gai…

作成したパッケージへの署名(例:samba)

m-hotta@gaia:~$ cat >> .rpmmacros %_gpgbin /usr/bin/gpg _EOF_ m-hotta@gaia:~$ rpm --addsign rpm/RPMS/i386/samba-*

GPG鍵の作成

m-hotta@gaia:~$ gpg --gen-key (後は指示に従う) 十分な長さの乱数が得られません。OSがもっと乱雑さを収集 できるよう、何かしてください! (あと281バイトいります) (ここで処理が止まるので、別の端末から以下のように重い処理を動かす) m-hotta@gaia…

自作RPMパッケージを公開する

pscpしたファイルがどこかへ行った

Windows7 上の pscp で Linux からファイルをコピーする。コピー自体は正常終了するが、 PS C:\Program Files\PuTTY> pscp celsior:/tmp/samba-settings.tar.gz . samba-settings.tar.gz | 3 kB | 3.8 kB/s | ETA: 00:00:00 | 100% PS C:\Program Files\PuTT…

Sambaドキュメント翻訳環境

経緯 Samba Document 翻訳の際、xml レベルの文法チェックのために必要な環境を構築した 時のメモです。例によって環境は Cent OS 5.x です。標準の CentOS-Base.repoの 範囲で入るものについては言及していません。 m-hotta@gaia:~/rpm/BUILD/samba-3.4.3/d…

samba 3.4.3 を試してみる

ビルド Cent OS 5.4 相当の環境で、Samba の安定最新版を試してみるテストです。 tar ball を開いてもよくわからない状態で、configure スクリプトも直下にはない。 どうしたものかと思ってたのですが、中を探ってみると samba-3.4.3/packaging/RHEL/samba.s…

phpでセッションの情報が消える

【概要】 現象 PHPで書いた申請フォームで、ユーザIDによる認証を行っているが、時々申請者のメールアドレスが""@example.comとなることがある。 原因 入力に時間がかかりすぎたためにセッションがタイムアウトし、セッション情報(ここではユーザID)が削除…

Spreadsheet_Excel_Writerのインストール

# pear install OLE-beta # pear install Spreadsheet_Excel_Writer-beta ちなみに Cent OS 5.3 では、 $ yum list | grep php-pear php-pear.noarch 1:1.4.9-4.el5.1 installed php-pear-Auth-SASL.noarch 1.0.2-4.el5.centos installed php-pear-Date.noar…

Flash Media Serverインストールメモ

まずはダウンロードしてインストール # unzip Flashmedia3_5_Int_Strm_ALP.zip # tar xzf Flashmedia3_5_Int_Strm_ALP/FlashMediaServer3.5.tar.gz # cd FMS_3_5_1_r516/ # ./installFMS (デフォルトからの変更分のみ記載) Please enter the Adobe Flash M…

起動できない&rootになれない

VMの一つ(CentOS5.3)で起動中に止まってしまうという事象があったので放っておいたのだが、一晩放置していたら起動していた。その中で原因らしきものを発見。 m-hotta@celsior:~$ sudo su - su: warning: cannot change directory to /home/root: そのような…

VNCServer for CentOS5.3

サーバ側のインストールと起動(システム管理者が一度だけ行う) root@vnc-server:~# yum install vnc-server twm xterm root@vnc-server:~# vi /etc/sysconfig/vncservers (以下のように追加…) VNCSERVERS="2:user1 3:user2 4:user3"(数字を増やして追加…

pgdgでPostgreSQL-8.4を入れてみた

$ wget http://yum.pgsqlrpms.org/reporpms/8.4/pgdg-centos-8.4-1.noarch.rpm $ sudo rpm -Uvh pgdg-centos-8.4-1.noarch.rpm $ sudo yum update (前略) > Package postgresql.i386 0:8.4.0-1PGDG.rhel5 set to be updated > Package postgresql-devel.i3…

VirtualBox 3.0.2

に上げてみた。for Windows バイナリ版です。 Bridged Network のまま。 Host->Guest への ping は通るが Guest->Host への ping が通らないのは同じ。 もちろん Gateway にも通らないので相変わらず外には出れない。 iptables では何も設定されていないよう…

ubuntu on VirtualBox

Sun xVM VirtualBox 3.0 for Windows を入れてみた。 VM として、ubuntu-ja-8.10-desktop-i386.iso を選択。 インストールが終わってから、おそらく終了処理で 「aptを設定しています(ミラーを検査しています)」 のまま固まっている ←いまここ。 タスクマ…

pear upgrade PEAR

root@gtr:~# pear upgrade PEAR /tmp/glibctestM45j4Y:1:22: error: features.h: そのようなファイルやディレクトリはありません pear/Archive_Tar requires PEAR Installer (version >= 1.5.4), installed version is 1.4.9 pear/PEAR dependency package "…

html_select_dateのprefixに変数値を埋め込む

Smartyのカスタム関数{html_select_date}では、 prefixパラメータでname属性の接頭辞を指定できる。 フォームの中で、1行がDBの1レコードに相当 するような複数の日付を表形式で入力させる場合、 prefixでレコードを特定するためのキー(primary key等) …

classpath.security

$ sudo yum remove libgcj すると、以下の警告が warning: /usr/lib/security/classpath.security saved as /usr/lib/security/classpath.security.rpmsave ふむ。その中身は # This file is part of GNU Classpath. だそうだ。 $ grep ^[^#] /usr/lib/secur…

postgresql-jdbc

8.3用のRPMパッケージが見当たらなかったので作ってみた。 でもJava知らないので動作確認できない(゚∀゚)

postgrey.8 を和訳してみた

こちらに置いてあります。

Net_LDAP2の使い方

# pear install Net_LDAP2 とりあえず動いたのでサンプル: #!/usr/bin/php <?php require_once('Net/LDAP2.php'); $ldap = Net_LDAP2::connect(array( 'host' => 'localhost' , 'port' => 389 , 'version' => 3 , 'starttls' => false , 'binddn' => 'cn=M…

logwatchのログ抑制

SMTPでrejectしたやつを全部報告してくるので抑制 $ cat /etc/logwatch/conf/ignore.conf ###### REGULAR EXPRESSIONS IN THIS FILE WILL BE TRIMMED FROM REPORT OUTPUT ##### NOQUEUE なお、reject履歴は別途ぽすぐれに突っ込んでいます。

pearはrpmで入れない

# wget http://pear.php.net/go-pear # php go-pear (以下のように調整する) 1. Installation prefix ($prefix) : /usr 2. Temporary files directory : /tmp 3. Binaries directory : /usr/bin 4. PHP code directory ($php_dir) : /usr/share/pear 5. Do…

spamassassin導入

# yum install procmail (たぶん入っている) # yum install spamassasin (同上) # vi /etc/postfix/main.cf (以下の行がなければ追加) mailbox_command = /usr/bin/procmail -a "$EXTENSION" # vi /etc/mail/spamassasin/local.cf required_score 13.0…

certwatchからの警告

なんかこんな警告が来た。 ################# SSL Certificate Warning ################ Certificate for hostname 'host.example.com', in file: /etc/pki/tls/certs/localhost.crt The certificate needs to be renewed; this can be done using the 'gen…

postgrey導入

rpmforgeリポジトリを有効にしておく # yum --enablerepo=rpmforge install postgrey # vi /etc/init.d/postgrey # OPTIONS="--unix=$SOCKET" (コメントアウト) # vi /etc/sysconfig/postgrey (新規作成) OPTIONS="--inet=127.0.0.1:10023" # service po…

php-5.2.8 for Cent OS 4.7

作ってみました。ここに置いてあるので自己責任でヨロです。 $ wget http://yum.net-newbie.com/newbie.repo # mv /path/to/newbie.repo /etc/yu.repos.d # yum --enablerepo=newbie install php ... 同じ手順で Cent OS 5.2 でもいけるはず。

Net_LDAP2のインストール

http://pear.php.net/package/Net_LDAP2/ # pear install channel://pear.php.net/Net_LDAP2-2.0.0RC5 # ls /usr/share/pear/Net/ LDAP2 LDAP2.php SMTP.php Socket.php # ls /usr/share/pear/Net/LDAP2 Entry.php Filter.php LDIF.php RootDSE.php Schema.p…

GNU Coding Standard(ディレクトリ)

(検証中)

.moファイルの中身を見る

日本語メッセージカタログは、コンパイルされた形で /usr/share/locale/ja/LC_MESSAGES あたりにインストールされている。 この中身を見るには以下のコマンドを使う: $ msgunfmt hoge.mo ちなみに、これで見つけた。 $ rpm -ql gettext | grep bin