_onichannn

【SEO】GoogleBotにAjaxページを知らせる方法。

angularなどで作成したページは検索エンジンになかなか認識されにくいので多少細工を施してやる必要がある。
方法としてはハッシュフラグメントをURLに付加する方法と、メタタグにて知らせる方法がある。

1, ハッシュフラグメントで知らせる。

AjaxページのURLに「#!」を付加する。

例)


http://example.com/index.html#!

GoogleBotはURL中に「#!」を見つけると、そこを「?_escaped_fragment_=」に置換して再アクセスしてくる。
なのでサーバー再度は「_escaped_fragment_」のパラメーターがあるかないかで返却するHTMLを切り替えてやればOK。

2, メタタグにて知らせる。

1, のような「#!」を使わずにAjaxページであることを知らせたい場合は、head内に下記のメタタグを追加してやる。

<meta name="fragment" content="!">

GoogleBotはこのメタタグを発見すると、1, と同様、URLの末端に?_escaped_fragment_=を付加して再アクセスしてくる。
サーバー再度は同じく、上述のパラメーター有無をキーに処理を切り替えてやればOK。

 

【CentOS/Git】git-flowの導入方法。

CentOSにgit-flowをいれてみる。

■そもそもgit-flowとは
git-flow は Git の運用を補助してくれるプラグインのひとつ。

■インストール

$ git clone --recursive git://github.com/nvie/gitflow.git
$ cd gitflow
$ make install
$ make prefix=/opt/local install
$ make install prefix=$HOME

これで完了。

簡単だね。

 

【CentOS】にPHPエクステンションのSSH2をインストールした際のメモ。

自分用。

yum install gcc gcc-c++
yum install openssl-devel
yum install libgcrypt-devel

wget http://downloads.sourceforge.net/project/re2c/re2c/0.13.7.4/re2c-0.13.7.4.tar.gz
tar zxvf re2c-0.13.7.4.tar.gz
cd re2c-0.13.6
./configure --prefix=/usr/local/re2c-0.13.7.4
make && make install

wget http://www.libssh2.org/download/libssh2-1.4.3.tar.gz
tar xzvf libssh2-1.4.3.tar.gz
libssh2-1.4.3
./configure
make
make install

wget http://pecl.php.net/get/ssh2-0.12.tgz
tar xzvf ssh2-0.12.tgz
cd ssh2-0.12
phpize
./configure
make
make install

vim /etc/php.ini
extension=ssh2.so

 

【Symfony2.3】doctrine2のfindBy()でlimit、offsetを指定する。

メモ。

findBy()は第3引数が$maxResults、第4引数が$firstResultになっているので下記のように指定すればOK。
※ちなみに第2引数はオーダー。

$em->getRepository('HogeFugaBundle:Piyo')->findBy([
    'status' => 2
], [
    'createdAt' => 'asc'
], 20, 0);

こんな感じ。

 

【Symfony2.3】doctrine2で一つのリザルトを取得する。

getSingleResult()を用いる。

$em->createQuery($dql)->getSingleResult();

のような感じ。

 

【Symfony2.3】Google用のサイトマップを生成するBundle。

「presta/sitemap-bundle」がマジ便利。

packagistは下記。

https://packagist.org/packages/presta/sitemap-bundle

gitは下記。

https://github.com/prestaconcept/PrestaSitemapBundle

これで速攻サイトマップ完成したは。

 

【Skype】を多重起動する方法。

Windows7にて。

1, デスクトップで右クリックして出てくるメニューの中からショートカットの作成を行う。

2,

32bitなら下記

"C:\Program Files\Skype\Phone\Skype.exe" /secondary 

64bitなら下記

"C:\Program Files (x86)\Skype\Phone\Skype.exe" /secondary

をパスに指定して名前をつけた後、保存。

出来たショートカットをクリックすれば、スカイプが多重起動する。

 

【Angular.js】特定の要素をAngularの管轄外に置く。

特定の要素内だけバインディング対象外にしたい場合など。

<ANY ng-non-bindable>
</ANY>

ng-non-bindableを用いることでバインド対象から除外することが可能。