サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
災害への備え
devslog.com
最近気づいたのですが、WordPressの標準のコメント機能の本文って文字数制限ないですよね。そんなわけでコメントの本文に文字数制限を加えてみました。 環境WordPress 3.2.1コメント本文の文字数を制限するfunctions.phpに次のコードを追加します。 /* * コメントの本文欄の文字数を制限する */ add_filter('preprocess_comment', 'et_comment_validate'); function et_comment_validate($comment) { if(mb_strlen($comment['comment_content']) > 512) { // $comment['comment_content'] = mb_substr($comment['comment_content'], 0, 5
とあるアプリの設計思想 : アーキテクチャ 検索 サイトナビゲーション当サイトについて カテゴリー一覧プログラミング56環境構築46ニュース18コラム17考察11デザイン8ベンチマーク5セキュリティ3SEO/SEM3最適化2 パンくず ホーム > 環境構築 > FuelPHP + Nginx + PHP-FPM + MySQL の環境構築(ローカルでの開発用)
とあるアプリの設計思想 : アーキテクチャ 検索 サイトナビゲーション当サイトについて カテゴリー一覧プログラミング56環境構築43ニュース18コラム17考察11デザイン8ベンチマーク5セキュリティ3SEO/SEM3最適化2 パンくず ホーム > プログラミング > CSSだけで改行する方法 – contentとwhite-spaceを使うやり方 CSSだけで改行する方法 – contentとwhite-spaceを使うやり方 2012年9月20日 Lamb プログラミング CSS3 どうしてもCSSしか使えない環境下で、任意の場所に改行を行いたいケースに遭遇しました。block要素にしてしまっては前方・後方の両方に影響がでてしまいます。そうじゃなくて任意の場所で改行する方法です。
とあるアプリの設計思想 : アーキテクチャ 検索 サイトナビゲーション当サイトについて カテゴリー一覧プログラミング56環境構築43ニュース18コラム17考察11デザイン8ベンチマーク5セキュリティ3SEO/SEM3最適化2 パンくず ホーム > 環境構築 > FuelPHP 1.6 のインストールの方法 本家がドキュメント用意してくれてるにもかかわらず、なんかハマったのでメモ。 導入した環境ローカルのUbuntuにいれました。次の通りUbuntu 12.04 LTSNginx 1.1.19PHP 5.3.10FuelPHP 1.6どこでハマったか従来のバージョンと同じ要領でインストールしおわったとおもって、ブラウザで見てみたらこんな出力が。Composer is not installed. Please run “php composer.phar update” in the ro
とあるアプリの設計思想 : アーキテクチャ 検索 サイトナビゲーション当サイトについて逆アクセスランキング カテゴリー一覧プログラミング54環境構築41ニュース18コラム17考察11デザイン8ベンチマーク5セキュリティ3SEO/SEM3最適化2 パンくず ホーム > 環境構築 > monitで落ちたら困るデーモンを監視する monitを動かして、落ちたら困るデーモンを監視してもらいましょう。デーモンプロセスを監視してもらって、デーモンプロセスが落ちたらメールが飛ぶようにします。 monitとはプロセスを監視するためのユーティリティツールです。プロセスの状態にあわせて、メールを飛ばしたり、再起動をかけたりすることができます。お手軽なのでよく使ってます。環境今回の作業を実施する環境は次の通り。Debian 6.0.6monitのインストールまずmonitをインストールする
とあるアプリの設計思想 : アーキテクチャ 検索 サイトナビゲーション当サイトについて逆アクセスランキング カテゴリー一覧プログラミング54環境構築39ニュース18コラム17考察11デザイン8ベンチマーク5セキュリティ3SEO/SEM3最適化2 パンくず ホーム > プログラミング > Androidで文字をあれこれ装飾する方法
とあるアプリの設計思想 : アーキテクチャ 検索 サイトナビゲーション当サイトについて逆アクセスランキング カテゴリー一覧プログラミング53環境構築35ニュース18コラム16考察11デザイン8ベンチマーク5セキュリティ3SEO/SEM3最適化2 パンくず ホーム > 環境構築 > Debianで最新・非公式パッケージのためにdotdebのリポジトリを使う Debianでの環境構築時に新しいパッケージや、非公式なパッケージが必要になることがあります。そういうときはdotdebリポジトリに目的のパッケージがおいてあったりします。そんなわけでdotdebリポジトリの追加方法です。 目的aptないしaptitudeで新しいパッケージや非公式なパッケージを取ってこれるようにする。環境今回の環境は次のとおり。Debian 6.0.2方法手順は次のとおり。dotdebのURLを追加する/etc/apt
環境Android4.0 Java SE 7 で検証しています。こちらでHelloWorldしたプロジェクトをベースに、テストコードを書いています。方法XMLの場合<Button>タグを使います。 android:onClick属性にクリック時の処理としてActivity内のメゾットを設定します。 その他の設定関係は基本的にTextViewと変わりません。ボタンを作るXMLはこんな感じになります。
Devslogとあるアプリの設計思想 : アーキテクチャ 検索 サイト案内当サイトについて逆アクセスランキング カテゴリー一覧プログラミング50環境構築34ニュース18コラム16考察11デザイン8ベンチマーク5セキュリティ3SEO/SEM3最適化2 パンくず ホーム > 考察 > 4つのFaviconスクレイピングAPIのなかで精度が高いものを探してみた Faviconの取得を代行してくれるAPIを集めて精度を比較してみました。 Favicon Converter今回ご紹介するfavicon取得代行サービスの中では一番多くのfaviconを取得できました。FC2のブログが対象でも比較的多くのfaviconが取得できていたのがポイントになりました。ファビコンを直接取得する場合は次のようなURLをリクエストします。
Devslogとあるアプリの設計思想 : アーキテクチャ 検索 サイト案内当サイトについて逆アクセスランキング カテゴリー一覧プログラミング49環境構築34ニュース18コラム16考察11デザイン8ベンチマーク5セキュリティ3SEO/SEM3最適化2 パンくず ホーム > プログラミング > 【GAE/Python】Full Text Search APIがキタ━━━━(゚∀゚)━━━━!! 2011年のGoogleI/Oでプレビューしていた、全文検索APIがテスト稼働されているので使い方を調べてみました。 はじめにこの記事はPython向けです。また、全文検索APIは実験的公開なため、将来的に変更される可能性があります。必要事項High Replication Datastoreを使用している必要があります。方法簡単な使い方の流れを書いてみます。詳しい説明はSearchAPIドキュメント
Devslogとあるアプリの設計思想 : アーキテクチャ 検索 サイト案内当サイトについて逆アクセスランキング カテゴリー一覧プログラミング48環境構築34ニュース18コラム16考察11デザイン8ベンチマーク5セキュリティ3SEO/SEM3最適化2 パンくず ホーム > 考察 > HAR(HTTP Archive)formatファイルを利用してはてなOneのプロファイリングを共有する方法 Google Developer Toolsをはじめとして各HTTPプロファイリングツールはHARでエクスポートすることができたりできなかったりします。あんまりエクスポート機能を利用する機会はないのですが、今回はあえて利用してみます。 HARファイルを使おうと思った経緯昨日、はてなOneにさわる機会に恵まれたので、小気味よくスキップしながらアクセスしてみたんです。すると、「ヘイ、ボブ!このサイトがもっさ
環境 Android4.0 Java SE 7 で検証しています。こちらでHelloWorldしたプロジェクトをベースに、テストコードを書いています。下準備AndroidManifest.xmlに
以前、 SSHへのブルートフォースアタック対策でdenyhostを入れましたが、denyhostが走るまでの間アタックされ続けるのが気になるので、iptablesを使ってブロックしてみます。 方法SSH(22)への接続が60秒以内で5回以上の場合に10分間接続を制限する設定は下の様な感じで登録します。 #接続制限フラグ立て $iptables -N SSHAttacker $iptables -A SSHAttacker -m recent --set --name attacker -j LOG --log-level warn --log-prefix 'SSHAttaker:' $iptables -A SSHAttacker -j DROP #接続制限されている場合は10分間接続拒否 $iptables -A INPUT -p tcp --dport 22 -m state --s
Chromeではinput[type="text"]:focusにoutlineが設定されています。 これが見栄えを損なうケースがあったので初期化しました。方法:CSSでoutlineプロパティをnoneにする挿入するCSSコード input[type="text"], input[type="password"], textarea, select { outline:none; }
やっておくと負荷をちょっぴり減らせる方法です。サイトのアクセスログのなかに404を返してるリクエストを見つけたならそれはチャンスです。ぜひともリクエストを正常に処理できるように工夫しましょう。それをきっちりやっておくことであなたのサーバーの負担はそれだけ減ることになります。 設置しておいたほうがいいファイル次のファイルはBotやらユーザーエージェントからじゃんじゃんリクエストされるので無条件で用意しておきましょう。/apple-touch-icon.png/apple-touch-icon-precomposed.png/favicon.ico/robots.txt/crossdomain.xmlなぜ設置したほうがよいかWordPressにわざわざ404ページを生成させないためです。つくるのめんどいよーって人向けにとりあえずファイルだけ用意したい人向けにrobots.txtこのサイトのro
近頃 /var/log/auth.logが肥大化していたため、何事かと調べて見ればSSHDへの総当たり攻撃ログで埋め尽くされていました。 鍵認証方式で設定しているので認証を通ることは無いのですが、ログが肥大化するのが気になるので対策してみます。方法今回は、Denyhostsを使用して、一定回数認証に失敗したIPをブロックします。Denyhostsはlogを解析して自動的に/etc/hosts.denyにIPを追加、削除してくれるPythonスクリプトです。SSH以外も解析できますが今回はSSHのみ。手順Denyhostsをインストールaptitudeでサクッと入れます。
update-rc.dは、Redhat系でよく利用されてるchkconfigにあたるものです。OSのブート処理の延長上で起動スクリプトを読み込ませて特定の処理をさせたいときなどに使います。 rc.dとはrcはRun Commandの略、dはDirectoryです。rc-update.cがやってること/etc/init.dの配下にある起動スクリプトにシンボリックリンクをはったりはがしたりしてます。どんな時に使うの?OSを起動/再起動時に立ち上げたいプログラムがある場合、update-rc.dを使います。update-rc.dは指定したランレベルで起動スクリプトを実行するように設定するためのものです。使い方まず、/etc/init.dの配下に起動スクリプトを設置します。aptからパッケージを入れた場合、インストール時に設置されてることがよくあります。なかったら自分で書きます。起動スクリプトの書
とあるブロガーさんがこまってたのをみかけたのでおいときますね。 この文書の内容を実行する前にphp-fpmの設定をしておく必要があります。 Debianでさくっとphp5-fpmをセットアップしよう環境この文書では次のような環境を想定しています。Debian 6.0.3Nginx 1.0.12WordPress 3.3.1今回の環境のWordPressが採用しているテーマはレスポンシブウェブデザインを導入しているのでスマホ版の設定は不要となっているのでコメントアウトしてある。この設定は何をしているのかWordPress向けに必要と思われることはだいたい取り入れています。リバースプロキシCache purgeSSL(管理エリアのみ)gzipキャッシュすべきではないリクエストへの対応サーバーの構成さくらのVPS 512 1台のみ。(トラフィックに応じて必要なリソースを見積もる必要有り。参考まで
「・・・いや、Chefとか使えよ!」という声が聞こえてきそうですが、手動でサーバーをちまちまセットアップしてたりします。そんなわけでDebianでサーバーを用意する時の作業のまとめです。 この文書はWebアプリサーバーを用意するときの一連の作業に関する記事を書いたらそのつど追記していきます。「ここをこうしたほうがGoodだよ」とかアドバイス大歓迎です。aptにdotdebリポジトリを追加するdotdebからパッケージをとってこれるようにしておく。 Debianで最新・非公式パッケージのためにdotdebのリポジトリを使うsudoの設定よくsudoを使うので設定しておく。 さくらのVPS+debian 6.0.3でsudoを使うSSHdの設定まず最初にリモートでターミナルにアクセスするためにSSHをセットアップする。 さくらのVPS+debian 6.0.3でSSHをセキュアに設定するFTP
記事が長くなってくると目次を用意したほうがいいですよね。 目次を生成してくれるプラグインとして Table of Contents があったのですが、2006年からメンテナンスされておらずソースコードとして表示している見出し要素にも干渉するので代替案を調べてみました。 すると良いものがありました。 従来のTable of Contentsより高機能です。2011年11月時点のバージョン1109では次のようなことができます。記事・ページどちらにも目次を生成できるサイトマップを生成できるスムーズスクロール対応目次の数字振りの可否目次の階層の可否よかったこと一番重要なのですが、ソースコードとして表記しているHTMLに干渉しません。気になってたのでうれしいです。ダウンロードはこちらからどうぞ Table of Contents Plusダウンロードページへ設定はこんなかんじついでにこのサイトでの
XMLレイアウトで共通のレイアウトを使いまわしたい時や、同じ構成のレイアウトを繰り返したい時は、別ファイルに定義すると管理しやすいんじゃないでしょうか。今回はそんな方法です。 環境Android4.0 Java SE 7 で検証しています。 こちらでHelloWorldしたプロジェクトをベースに、テストコードを書いています。方法<include>タグを使います。使ってみるTextViewが2つあるだけのレイアウトxmlを繰り返し表示してみます。res/layout/inc.xml <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="wrap_content" a
MySQLTuner.plは読み取り専用スクリプトなので、書き込みやデーモンの状態を変更するなどは一切しません。MySQLのステータスを読み取って、チューニングすべき概要を提言してくれます。入手方法と実行権限の付与と実行githubからDLします。 $ ./mysqltuner.pl >> MySQLTuner 1.2.0 - Major Hayden <major@mhtx.net> >> Bug reports, feature requests, and downloads at http://mysqltuner.com/ >> Run with '--help' for additional options and output filtering Please enter your MySQL administrative login: root Please en
プログラマーがプログラムに仕込む小ネタのことをイースターエッグと呼びます。まったく役にはたちませんが、見つけるとクスッとできます。 aptitudeのイースターエッグ aptのネタを知ってる人向けのイースターエッグが仕込…
WordPressに限らずですが、通信を盗聴されたらまずい場面ってありますよね。そんなわけで、WordPressの管理画面以下はSSLで通信することにします。 SSLとは?Secure Sockets Layerの略で、えすえすえると発音します。ユーザーエージェントとホストの通信を暗号化するプロトコルのことです。SSL使うメリットは?HTTPのままだと暗号化されてないので覗けちゃいます。なので暗号化して覗きにくくするわけです。今回やること今回のケースではWordPressにログインする人が限られてるのでオレオレ証明書でイナフです。なので、Opensslを使ってオレオレ証明書を発行します。そのあと、特定のURLにアクセスがきたらSSLで通信するためのNginxのコンフィグレーションを行います。環境今回の作業はすでに次の環境が構築されていることを前提にしています。Debian 6.0.3Ngi
Chromeのバージョン18あたりからユーザーエージェントを手軽に変更できるようになりました。 これまでは出来なかったの?できてた。起動時にオプションを追加する方法か、拡張機能で実現できてた。でも、Chrome Developer Toolsが同様の機能を追加したので、それをつかう。ユーザーエージェントを変える意味あるの?あるある。スマホサイトを作ってるときとかに使う。つまり開発者向けのちょっとした機能。ユーザーエージェントの変え方Developor Toolsを立ち上げます。右クリックから「要素の検証」を選択するか、Ctrl+Shift+Iキーを押すと起動する。Developer Toolsの右下にある歯車のアイコンをクリックする。Settingsっていうレイヤーがポップアップするので、Networkに分類されているOverride User Agentにチェックを入れる。すぐ下のプルダ
自宅で作業してると、FacebookやGoogle+でいいねとか+1ボタンを連打してるうちに1時間どころか2,3時間ふっとんでることがあり「これはあぶない、どうにかしよう」と思い立ちました。 15分ごとに作業を区切ると良いらしい以前もタイマーやアラームで「1時間単位」とか「30分単位」に区切って作業してて、それなりに時間が意識できて能率あがってた覚えがあります。ただ、毎回セットするという「1クリック」がめんどうでここ最近はやらなくなっていました。先日、「15分区切りで仕事するといいらしいぞ!」なんてことをライフハック系のブログで見かけたので今回は15分でやってみたいと思います。学校のチャイムみたいなのがいいじゃーどうするかなーとぎゃーぎゃー言いながら考えてると、アラートやタイマーではなく「学校のチャイム」を求めてることに気づきました。学校のチャイムを用意したい環境私の仕事用の環境です。Ub
WordPressは現在のところ世界で一番普及しているブログエンジンです。裏を返すとアタッカーにとっては格好の的ということでもあります。そんなわけでセキュリティを意識します。 ログイン機構のセキュリティをあげるWordPressに限らずですがウェブアプリは、ログインを試行しほうだいな状況だと、目を付けられたらあっさり突破されます。WordPressを利用しているブログだとadminというアカウントがあることが非常に多いのでそれも狙いどころになってしまいます。Login LockDownはとても人気のあるプラグイン2012年2月現在で137859回ダウンロードされています。 Login LockDownLogin LockDownがやってくれることこのプラグインはログイン機構の強度をあげるのによく用いられる機能を付与してくれます。付与してくれる機能はつぎのとおり。指定時間内の試行回数を指定で
フラグやフラグみたいなものをbitで管理するメモ。ステータスなんかもこれで管理する。 環境今回の環境はつぎのとおり。MySQL 5.1.58テーブルをつくるbit型のカラムをもったテーブルを作る。 CREATE TABLE IF NOT EXISTS `owl-status` ( `char_id` INT(11) NOT NULL DEFALUT 0, `status` bit(2) NOT NULL DEFAULT b'0' COMMENT '1:混乱, 2:毒', PRIMARY KEY (`char_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
# Use this to jail all users in their homes DefaultRoot ~ # This is required to use both PAM-based authentication and local passwords AuthOrder mod_auth_pam.c* mod_auth_unix.c # # This is used for FTPS connections # Include /etc/proftpd/tls.conf TLSEngine on TLSLog /var/log/proftpd/tls.log TLSProtocol
次のページ
このページを最初にブックマークしてみませんか?
『http://devslog.com/』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く