ラベル movabletype:MT の投稿を表示しています。 すべての投稿を表示
ラベル movabletype:MT の投稿を表示しています。 すべての投稿を表示

2015年10月15日木曜日

Coreserverで.htaccessを使ってmod_rewriteを書く【解決】

coreserver コアサーバー


Coreserver(コアサーバー)はバリュードメインが運営しているレンタルサーバーです。 2014年にサーバー全体に大幅なバージョンアップがありました。
安く運用できるため、未だに使ってますが仕様が色々と特殊です。

mod_rewriteを使おうと思いかなり経ってしまい色々調べましたが、
Wordpressを使った場合という前提の内容が多く、どうもこちらの目的と違います。
Wordpress特化でなく、もっと汎用的に使いたいと思っていたからです。

通常のサーバーはウェブルート(public_htmlなど)に.htaccessというテキストファイルを作成し
そのファイルをアップロードすればいいのですが、なぜか、サーバーエラー 500が起こったり
動いているように見えて、not foundになったり試行錯誤。
ようやく解決しました!

要はサーバー仕様のせいですw

.htaccessは以下のように記載します。

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
### Straight Search
RewriteRule (.*)$ /mt/mt-search.cgi?IncludeBlogs=1&search=$1 [QSA,L]


1~3行目は割愛します。沢山検索できます。
4行目の#はコメントアウトするときに記載します。
一番重要となる5行目のRewriteRuleのところですが、括弧内の文字列がURL内にあるとき、$1に置換しますという意味です。
movabletypeを使っている方はよく分かると思いますが、文字列検索の一文です。
上記の.htaccessを新しく作ったディレクトリにアップロードします。(超重要)

例えば、keywordsというディレクトリにアップロードしたときは
/keywords/webdesign  というURLが /mt/mt-search.cgi?IncludeBlogs=1&search=webdesign
になります。 

なぜ、こんな事で長い期間頓挫してしまってたんだろうと自己嫌悪ぎみw

ホームページ制作 東京!null ホームページ制作 東京!null

2015年9月19日土曜日

検索結果を爆速にする方法【MT3系】

boost search 爆速


今個人的に使用しているMT3(Movabletype3)の検索結果が異常に遅いのを
しばらく放置したまま時間が経ってしまいました。

現在エントリー数がかなり多くなってしまったサイトを運用中のため
多分、閲覧者が検索をする機会が多くなっており
検索結果が遅いために閲覧者を逃がしている可能性があるのではと思ったためです。
サイト離脱を極力抑えるために
検索結果テンプレートをいじることにしました。

変更方法は2つ考えられます。
①ページ送り(ページ分割)して1ページずつのロードを早くする
②キャッシュ機能を使い、検索結果の内容をあらかじめサーバーに保存させておく

結論は②でいくこととなりました。
①も試してみたのですが、ページ送りをしても、結局検索結果を全部読み込む事となり
待機時間が長くなってしまいます。
環境変数で処理もしてみて、早く読み込む事ができましたが
ページ送りが機能しなくなってしまいます。①の方法は八方塞がりです。

②のキャッシュ機能の方法は以下の通りです。

1.キャッシュ機能を実装するプラグインのインストール
SearchResultsCache プラグインをダウンロードます。(リンク先のページ下、MT(OS)4.1用)
そのファイルを解凍してMT/pluginsにインストールします。
上記リンク先のCpanモジュールを3つをmt/extlibにインストールします。
Cache は解凍してlib内にあるファイル・フォルダをmt/extlibにインストールします。
File::NFSLock も解凍してlib内にあるFileフォルダをフォルダごとmt/extlibにインストールします。
Date::Parse も同じく解凍してlib内のDate、Timeフォルダごとをmt/extlibにインストールします。
(上記3つのファイルはtar.gz圧縮ファイルです。tar.gz対応解凍ソフトを使って解凍してください。私は7-Zipを使用してます。 )

2.検索結果テンプレートの変更
テンプレートの文頭に、
<MTKeyCachedKey><$MTSearchString$></MTKeyCachedKey>

<MTKeyCachedValue>
検索結果テンプレート前項
</MTKeyCachedValue>
というように検索結果構文を挟むように記述します。
参考はこちらをご確認ください。

最初にキーワード検索を使った時は通常の検索時間が必要になりますが、
他者が同様のキーワードで検索した時はキャッシュ機能が働いているため
通常のページのような速さで読み込んでくれます。


ホームページ制作 東京!null ホームページ制作 東京!null

2015年9月3日木曜日

カテゴリー別に表示したいテンプレートタグ【MT3系】

movable type ムーバブルタイプ

未だにMT3(movable type ver3)系を使っています。
個人的にです。

そこで 備忘録レベルで記載します。

<MTIfIsDescendant>

カテゴリー別に表示したいデザインや文言を表示することができます。
記載方法は

<MTIfIsDescendant parent="親カテゴリー名"></MTIfIsDescendant>

となり
分岐も可能です。


<MTIfIsDescendant parent="親カテゴリー名">
     親カテゴリーとその下層カテゴリーに表示させたい情報
<MTElse>
     指定したカテゴリー以外に表示させたい情報
</MTElse>
</MTIfIsDescendant>

特定の親カテゴリとその以下で表示を分けたい時などは
<MTIfIsDescendant parent="親カテゴリー名A">
     親カテゴリーAとその下層カテゴリーに表示させたい情報
</MTIfIsDescendant>
<MTIfIsDescendant parent="親カテゴリー名B">
     親カテゴリーBとその下層カテゴリーに表示させたい情報
</MTIfIsDescendant>
とする事で表示分岐ができます。


テンプレートはエントリーテンプレート、カテゴリーテンプレート、日別(月別)テンプレートメインインデックステンプレートほぼ全てのテンプレートに適用できます。

なぜか覚えづらくすぐ忘れるタグです。。。

ホームページ制作 東京!null ホームページ制作 東京!null