サーバーの負荷を考える(メールサーバー)…

postfix

デジタルドリームワークスから比嘉です。
さてサーバーを持っていると必ずと言っていいほど打ち当たるのが負荷問題です。
一時的なものであればまだ良いのですが、頻繁に負荷がかかり処理が出来なくなる状況であれば対策をねらなければなりません。
そもそもスペック的な問題なのか、一部のシステムが高負荷になり全体に影響を与えているのか。
ログを確認しても難しい部分もあります。

今回はメールサーバ(Postfix)を見ていきます。
弊社の環境ではメールサーバーが負荷を与えている状況ではありませんでしたが、改善出来るポイントを確認してみました。

※以下のチェック項目はあくまでPostfixの他の部分(スパムメールの踏み台にされない)など 適切な設定を行っている場合の追加チェックポイントみたいなものです。

 

———-

 

/etc/postfix/main.cfを確認していきます。

 

1. unknown_local_recipient_reject_code 項目の確認

「unknown_local_recipient_reject_code」の項目は名前通り、宛先ユーザーが存在しない場合のresponse codeの設定です。
バージョンが古いpostfixでば、「450」となっている場合があるようです。

コード「450」の場合は一時的にメール配送ができない状態を表し、時間をおいて再送される仕組みになっています。
宛先ユーザーが存在しない場合でも設定されている期間内で繰り返しメールを配送しようと処理するので「450」の場合は「550」修正します。
※ コード「550」は宛先ユーザーが存在しないということで即座に拒否(送り返す)します。

unknown_local_recipient_reject_code = 550

色々と記事を見ていると配送設定の期間もデフォルトではいけませんよ 的な記事もありました。

【 参考 】

Postfixの再送設定はデフォルトだとちょっとお人よしですよ

minimal_backoff_time =
maximal_backoff_time =
maximal_queue_lifetime =
bounce_queue_lifetime =
queue_run_delay =

 

2. エラーメールの返信ポリシーを検討する

宛先ユーザーが存在しない場合はエラーメールとして送り主にエラーメールが返信されます。
しかしスパムメールは送り主を偽装して実在しないメールからメールを送信されたかのようになっている場合があり、エラーメールが送信出来ずにサーバー内に溜まっていく場合があります。
調べた結果、管理者によりエラーメールの設定ポリシーは異なるようです。

1. 従来通りエラーメールを送り主に送信(サーバー内に溜まるエラーメールを定期的に削除?)
2. エラーメールを送信せずそのままサーバー内で削除

1の場合は送信者がエラーでメールが届いていないことが分かるメリットがありますが、サーバーに溜まるエラーメールを削除する必要がありそうです。
2の場合は溜まったメールを処理する手間は省けますが、メールが届いてない場合も確認出来ないなどの問題が出てきそうです。

どちらもメリット、デメリットがあります。
そして一般的な設定はどうなっているのでしょうか。気になるところですがその部分を確認することは出来ませんでした…
ご存知の方がいらっしゃいましたらコメントいただけると幸いです m(_ _)m
弊社のサーバー環境も確認&検討してみようと思います。

wordpress memo

スタイルシートの分岐 メモ

 

 

wordpresslogo-e1367355053944

<link href=”<?php bloginfo(‘template_directory’); ?>/css/<?php
if (is_page(‘ページID’)) {
echo ‘work’;
} elseif (is_page(‘ページID’)) {
echo ‘service’;
} elseif (is_page(‘ページID’)) {
echo ‘company’;
} elseif (is_page(‘ページID’)) {
echo ‘map’;
} elseif (is_page(‘ページID’)) {
echo ‘knowledge’;
}
?>.css” rel=”stylesheet” type=”text/css” />

これでうまく分岐が出来てなくて

それを

<link href=”<?php echo get_template_directory_uri(); ?>/css/<?php
if (is_page(‘ページID’)) {
echo ‘work’;
} elseif (is_page(‘ページID’)) {
echo ‘service’;
} elseif (is_page(‘ページID’)) {
echo ‘company’;
} elseif (is_page(‘ページID’)) {
echo ‘map’;
} elseif (is_page(‘ページID’)) {
echo ‘knowledge’;
}
?>.css” rel=”stylesheet” type=”text/css” />

こんな風に書くとうまく行ったのですが

何カ所かちゃんと動かないところがありました。

CSSのシート分けないといかないのかなー!

もうちょい色々探ってみます!

WordPress.comサイトにWordPress.com for Macで記事を投稿する。

wordpress_logo

WordPress.comサイトを更新できる、Macアプリがでました。「WordPress.com for Mac」というアプリ名で、少しばかりややこしいです。ここから「WordPress.com for Mac」をインストールできます。さらにインストール型WordPressにJetpack プラグインを設定すれば「WordPress.com for Mac」でブログの投稿ができます。サイトのアクセス解析もついています。

使用しての感想ですが、メニューも英語版のままですのでとまどいはあります。ブログを投稿するときのエディターは、さくさく動いて使いやすいですが、ブラウザーでコンテンツを投稿するのが簡単だと思います。WordPressのことですのでここからもっと使いやすくなると思いますので今後に期待です。

 

wordpress_app_1

 

woocommerce メモ

ウーコマース商品ページのメモ

 

 

woo

 

do_action( ‘woocommerce_before_single_product_summary’ )で

sale-flash.php
product-images.php

このアクションでサムネイルの写真類

do_action( ‘woocommerce_single_product_summary’ )で

title.php
rating.php
price.php
excerpt.php
add-to-cart.php
meta.php
sharing.php

このアクションで 料金 商品名 備考 カート追加
アクションに優先順位を決めてあげると並びを調整する事が出来るみたいです。

これの中身を一枚で持ってくる事で全部わざわざ分けられてない一枚で全部操作する事がで来そうです。

使いこなすまでにまだまだ勉強が必要そうです!

 

Google マップの上位表示の要因メモ

20160115-higa-pict01

 

お客様からGoogle マップ上位表示についてチラッと話が出たのでメモ。
Googleマップの上位表示についてまとめてみました。

1. Google マイビジネスの登録
2. ホームページと登録したGoogle マイビジネスの情報の統一
3. サイテーションを増やす

様々な要因があるようですが、自分としての最も重要な部分は上記と思いました。

 

1. Google マイビジネスの登録(無料)

・正確な情報を入力する
・入力出来る項目は出来るだけ入力する
・適切なカテゴリへの登録

Google マイビジネスへの登録自体が重要なのではなく、登録する際に正確な情報を入力することが重要です。
業務内容に合ったカテゴリの登録や紹介文などにはキーワードを盛り込んだ文章にすると良いそうです。
ホームページに記載されているビジネス名や住所、電話番号もGoogle マイビジネスの情報と完全一致させることも重要だそうです。

沖縄県宜野湾市大山6-27-11
沖縄県宜野湾市大山6丁目27番地11

など意味は同じでも、少し違う書き方をすると良くないようで統一すること。

 

2. ホームページと登録したGoogle マイビジネスの情報の統一

項目1とかぶりますが、Google マイビジネスに登録した情報とビジネス名や住所、電話番号もGoogle マイビジネスの情報を統一させる。
また登録したURLのページのtitleに都市名を入れて地域性を持たせた方が良いそうです。

 

3. サイテーションを増やす

協力していただける方などがいれば、協力してもらいサイテーションを増やしていきましょう!

 

「住所」、「電話番号」の完全一致ということは各店舗ごとにGoogle マイビジネスを登録が必要そうですね。
サポートページに一括アップロードツールなどもありました。

https://www.google.co.jp/business/faq.html

Google Maps iframeでホイールスクロールを無効

デジタルドリームワークスから比嘉です。
たぶん「こんなの知ってるよ!」というくらい、ちょっとしたメモです。

ホームページにGoogle Mapsを組み込むことは多々あります。
Google Maps APIを使用すればよりカスタム性は上がりますが、そこまでは…
という方にはGoogle Mapsの「共有」から組み込みコードを取得してコピペで簡単に導入出来ます。

Google Maps 非常に便利ですが、少し気になる部分も出てきます。
ページの表示速度が遅くなること。そしてページをスクロールする際にマップの上引っ掛かることがあります。
実際に試して下さい。

 

 

スクロール中にマップにさしかかると、マップのズームが反応してスクロールの妨げになります。
PCの場合はカーソルをマップからずらせば問題ないですが、スマホとかだと画面一杯に表示されていて面倒だったりもします。
Google Maps APIで回避する方法は以前から知っていましたが、iframeでも簡単に回避できるようです。

ちなみに、Google Maps APIでは、以下のようにマウスホイールのオプションを付与することで回避出来ます。

scrollwheel: false

 

[javascript]

[/javascript]

 

そしてGoogle Maps iframeの場合は、こちらもめちゃくちゃ簡単でした 笑
iframeのスタイルに、pointer-events無効のスタイルを入れるだけ。

pointer-events: none;

 

[html]

[/html]

 

 

スクロールがマップにさしかかってもズームが回避されてスムーズにスクロール出来ると思います。

 

—–

 

ここ数年はスマホ、タブレットに対応したサイト制作が増えましたね。
今年もサイト制作の上でスマホやタブレット対応は必須、重要となってきますが、
さらにスマホでもより使いやすいサイト設計へとステージアップ、レベルアップしていきたいと思います。
今年もどうぞよろしくお願い致します!

WordPress メモ

wordpress
Simple Share Buttons Adder これは設定で最初の方にどのシェアーボタンを選んで その設置したい箇所に設置してできるタイプでした。
PHPのほうで記述する場合を模索するとPHPの方で
<?php echo do_shortcode(‘[ssba]’); ?>

この記述をする事によって自分が設定で選んだシェアボタンを設置する事が出来ました。

もっと面白いアイデアのプラグインがあったので色々試したいです。