WordPressのカスタマイズとプラグイン、CSSテクニック、SEOの話題など。
In: Linux
16 10月 2009sshで違うサーバーに接続しようとしたときに、こんな警告メッセージが出ることがあります。
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that the RSA host key has just been changed.
The fingerprint for the RSA key sent by the remote host is
55:6d:ss:67:1c:6a:ee:4c:1c:5t:cb:23:dd:0e:59:aa.
Please contact your system administrator.
Add correct host key in /root/.ssh/known_hosts to get rid of this message.
Offending key in /root/.ssh/known_hosts:6
RSA host key for 192.168.123.170 has changed and you have requested strict checking.
Host key verification failed.
lost connection
これは、SSHがセキュリティのために最初の接続時に生成するRSAキーが変わっているために、「同じサーバーではない。誰かがアタックした可能性がある!」ということで接続が遮断されているというものです。
例えばバーチャルサーバーで、中身を差し替えたときなど、意識的にサーバーを変えたときにも発生します。
そんなときは、known_hostsファイルから、該当サーバーの鍵が記述されている行を削除して、もう一度つなぎ直します。
/root/.ssh/known_hosts
192.168.123.1 ssh-rsa AAAoph97fr08261gbYF(IUHJopig089gukfgyuOI)GUHIJPOK97gf807yuhoj9ukkbtsd87tuyijg8yiguh0p@l
192.168.123.2 ssh-rsa AAAoph97fr08261gbYF(IUHJopig089gukfgyuOI)GUHIJPOK97gf807yuhoj9ukkbtsd87tuyijg8yiguh0p@l
192.168.123.3 ssh-rsa AAAoph97fr08261gbYF(IUHJopig089gukfgyuOI)GUHIJPOK97gf807yuhoj9ukkbtsd87tuyijg8yiguh0p@l
<-この行を削除!
鍵は、最初の接続時に自動で作られるので、削除してしまって問題ないのです。
(もちろん、身に覚えがないのにこのエラーが発生したら、もしかして本当に攻撃を受けたのかも知れません!)

In: Linux
15 10月 2009CentOSをインストール後、最初の起動時に、FirewallとSELinuxを設定する画面が現れます。大体の人はLinuxのFirewallは切ると思いますが、ここでまごまごしていると、飛ばしてそのままログイン画面に移ってしまいます。
ログインした後からFirewallとSELinuxを設定する方法です。
setup
この単純なコマンドを入力すると、最初のインストール時のような青い設定画面が現れます。
ここでネットワーク関連の設定が色々できます。
system-config-securitylevel-tui
このコマンドを入力すると、FirewallとSELinuxだけの設定画面が現れます。
Security Level ( ) Enabled (*) Disabled
SELinux: Disabled
にすればOKです。
getenforce
のコマンドで、現在SELinuxがどういう設定で動いているかがgetできます。
enforcing
で、設定のオン・オフ(permissive / enforcing)を切り替えます。
# setenforce 0 →permissiveモードに切り替える
# setenforce 1 →enforcingモードに切り替える
vi(vim)で編集していて、他のソースからコピペして貼り付けようとすると、インデントが重なってものすごくネストが深くなってしまいます。
(例)
<div class="content"> <h2>見出し</h2> <p>本文本文</p> <ul> <li>リスト1</li> <li>リスト2 </li> </ul> </div>
こんなソースが…
<div class="content">
<h2>見出し</h2> <p>本文本文</p> <ul> <li>リスト1</li>
<li>リスト2 </li>
</ul> </div>こうなってしまう!
これは、vimの設定で「autoindent」という項目がONになっているから起こる現象です。
解除するためには、コマンドモードで
:set noautoindent
と入力すればOKです。
ちなみに、
:set
のコマンドで、現在有効になっている設定の一覧が表示されます。

In: Linux
18 9月 2009リナックスにはmailコマンドというのがあります。サーバー上で直接メールの送受信を行なうコマンドです。
【書式】
mail [-s 題名] [宛先]
このコマンドを実行すると、本文、CCを順に入力するようになります。
本文を入力し終わったら「.」ドットで終了させます。
【例】
[dacelo@info]$ mail -s テストメール dacelo@example.com
本文です。
.
Cc: copy@example.com(空白でも可)
ただ、これだとテストメールを送るくらいしか使えないので、いくつかネタを。
まず、日本語のメールを送ろうとすると、大抵文字化けしちゃうんですよね。
これを回避するには、あらかじめテキストファイルを作っておいて、nkfでそれを読み出して、パイプでmailコマンドに渡す、という方法があります。
[dacelo@info]$ nkf -j mailtest | mail -s 日本語のテストメール。 dacelo@example.com
まあちょっと二度手間で面倒くさいんですが。
普通に送ると、
dacelo@localdomain
などのユーザー名&サーバーホスト名でのメールが送られます。ここに返信されても困りますし、メールのFromを指定しましょう。
メールコマンドの最後に「–」(ハイフン2つ)を付けて、「-f メールアドレス」を入力します。
[dacelo@info]$$ mail -s テストメール dacelo@example.com — -f test@test.test
これで、test@test.testからのメールとして届きます。
In: mysql
11 9月 2009tableに1000件くらいデータが入ってるんだけど、その中でtypeというキーに何種類くらいの値があるか知りたい…。そんなときに使います。
SELECT DISTINCT (type), *
FROM `table`

In: Linux
10 9月 2009subversionでコミットしようとしたら失敗した。
[dacelo@info]$ svn commit svn: コミットに失敗しました (詳しい理由は以下のとおりです): svn: ログメッセージを取得するのに外部エディタを使えませんでした。$SVN_EDITOR 環境変数を設定するか、--message (-m) か --file (-F) オプションを用いてみてください svn: 環境変数 SVN_EDITOR, VISUAL, EDITOR のどれも設定されていなく、実行時の設定オプション 'editor-cmd' も見つかりません
svn updateは問題なくできているので、環境のせいではなさそう。
エラーメッセージによると、メッセージを編集するためのエディタが指定されていない、ということだった。
SVNコミットする際は、必ずコミット時メッセージが必要になるので、こまんどでメッセージを挿入するか、外部エディタを設定すればよい。
svn commit -m 'ここにコメント'
[dacelo@info CMScontroler]$ svn commit -m 'sidebar exclude設定' 送信しています CMS/content.php ファイルのデータを送信中です..... リビジョン 3794 をコミットしました。
外部エディタにviを指定する方法でもOK。
# EDITOR=vi svn commit
In: tool
9 9月 2009phpで書かれたWebベースのPostgreSQL管理ツール、phpPgAdminのレスキューtipsです。
「phpPgAdmin :: Web Based PostgreSQL Administration Toolで、ちゃんと設置したはずなのにログインできない!」
というときのために、検索用の覚え書き。
それらをWEBブラウザ上で操作できるようにするPHPプログラムが、phpMyAdminとphpPgAdmin。
そのうち、phpPgAdminはPostgreSQL用のそれ。phpPgAdminはphpMyAdminよりもインストールでハマる可能性が高いと思います。
以下、「ログインできない!」と焦ったときのチェックポイント。
In: 未分類
8 9月 2009viで編集しているとき、間違ったときはUで戻せる(Undo)。
ではUで戻しすぎたときは…?
というのがよく分からなくなるのでメモ。
あとは十字キーではなく、文字でのカーソル移動。
| aaaaaaah | カーソルを左へ移動する。 |
|---|---|
| j | カーソルを下へ移動する。 |
| k | カーソルを上へ移動する。 |
| l(エル) | カーソルを右へ移動する。 |
| u | UNDO。変更を元に戻す。 |
|---|---|
| Ctrl + r | Redo。「u」で戻しすぎた変更を元に戻す。 |

In: 未分類
19 8月 2009PHPの開発効率を上げる10個の関数 – PHP,MySQL,Flexな日々+イラストとか
変数、配列の内容をキレイに表示する関数「d」
変数や配列の内容をHTML構文でキレイに表示してくれます。
しかも、var_dumpと書くとタイピングが大変なので「d($hoge)」として簡単に記述。
これだけでも作業効率8倍
PHPの便利な関数色々。
こうして、自分のよく使う処理をオリジナル関数として持っておくと使い回せて便利そうですね。

In: WordPress
17 8月 2009WordPressを2.84にアップデートしたらフェイタルエラーで表示不能に。
Fatal error: Call to undefined method WordPress_Module::_weak_escape() in /home/dacelo/html/wordpress/wp-includes/wp-db.php on line 487
データベースのバックアップを取っていなかったので(よいこは必ず取りましょう)プラグインを全部停止してみると表示された。
どうやらプラグインredirectionが読んでいるメソッドが最新版では廃止されている模様。
redirectionを停止すると直りました。
ちなみにredirectionは最新の2.1.22(2009年6月更新)にすればOKです。なぜか結構前に僕が入れたバージョンは2.1.4だったのですが…?

ここは、SE見習いである私ことdaceloが、日夜習得していくシステム関連の備忘録、phpやWordPressTipsのネタ、あるいはSEOやWebマーケティング関連の雑感を投稿するブログです。 平日は大体毎日投稿しています。土日は休業日です。
最近のコメント