さくらインターネット、独自ドメイン.htaccessの各種設定(ドメイン設定見積の考え方付き)
さくらインターネット、スタンダードプランです。
FreeBSDでさくら独自仕様、共有サーバーの中にある独自ドメイン1つに対してSSLを設定出来る(SNI SSL)ようになっているなど、特にLinux慣れしていない人には、他の共有レンタルサーバーよりもドメイン周りの.htaccessやディレクトリ割り当てのベストな設定を導き出しにくいです。無駄に検証作業で時間消費します。
ドメイン設定作業だけの見積としての細かい見解も記載しました。
独自ドメインはFreenomが最大12ヶ月無料
独自ドメインの設定方法を検証したい方は、Freenomで最大12ヶ月の無料独自ドメインを取得出来ます。
Freenomの無料トップレベルドメイン
以下5種類です。
- .tk
- .ml
- .ga
- .cf
- .gq
DNSサーバーかネームサーバーの設定は1発で終わらせるべき
短時間のうちにFreenomをいじり倒すと、変更内容の反映が追い付かなくなり、しばらく待たないと作業出来なくなります。
ドメインを取得してDNSレコードかネームサーバーのホスト切替を1度設定したら、そのあと複数回ごちゃごちゃいじるのはやめておいた方がいいです。
お名前ドットコムやムームドメインなども同じですが、ドメインを取得してサーバーに向きを変える設定は1発で終わらせないと反映がどんどん遅くなり、長い待ち時間が発生します。
経験上、一時的なTTL設定300などをしなければ、半日から1日程度は無情に作業拘束されてしまいます。
さくらのコントロールパネル内の文言もわかりにくく、初めて使う人は検証に時間を奪われます。
15分で出来る想定のマニュアル通りの見積設定はNG
ドメイン設定は、15分で出来る想定でマニュアル通りに3000円などを何も聞かずに即回答するのはNGです。
リスクヘッジで、「ドメイン設定変更がしっかり反映するまで最大2~3日かかるよ。事前のTTL浸透も別で2~3日。合計1週間」と、特に長くなる理由はホップ中継するキャッシュサーバーであり、制作会社側ではどうしようも無い事を明確にクライアントに伝えておく。
後出しで何か言われたり、問題が起きたときに動きにくくなるので、説明がめんどくさい為に何も言わずにリスクを無駄に背負う事は避けるべき。
メールはGoogle Apps/ドメインは既に海外の会社で取得/サーバーはbluehostなど、後出しで言われてしまった時には、bluehost操作パネルの英語解読、ドメイン会社のDNSレコード設定でAレコード/Cネーム/MXレコードなどを一発で設定、メール/ドメイン/サーバーのアカウントを漏れなく教えて1往復で提示させる(場合によってNDA締結の手間も発生)、などの時間やコミュニケーションコストが必要です。
bluehostは、格安ポジションとしては世界的なメジャーどころらしく、サーバーもVPSもクラウドも提供してますが、VPSはコントロールパネルがわかりにくくて、使いにくくて、遅くて、ログイン毎の広告がめちゃくちゃ邪魔で、苦労させられた事があります。
お名前ドットコムとXサーバーなど、ネームサーバーのホスト書き換えだけでほとんど出来る「ど定番」組み合わせなら3000円とか5000円で見積に書けますが、細かいDNSレコード設定は日本の物価なら1万円とか2万円の作業量に値します。
見積技術が無い赤字会社や賢いパッケージ売り会社に注文は流れる。
クライアント側にとってみれば具体的な作業内容の違いがわからない為、同じドメイン設定なのに価格が異なるという事を理解出来ず、見積能力が無く実質赤字であることを理解出来ない何でも屋の技術不足の安売り会社、もしくは賢くパッケージ化して条件を先出し提示して販売している会社に流れてしまいます。
「ど定番」であっても、メール/ドメイン/サーバーのアカウントを漏れなく必要な情報を提示させる事をクライアントに教える「コミュニケーションコスト」を考えると3000円や5000円では、日本の人件費や物価水準では利益が全く無い。
このあたりは、NDAも含めてマニュアルを作っておいて読まさせて、間違いなく素早く提示させる必要があります。
情報開示なので慎重さは必要ですが、開発全体で受注する場合、いちいちアカウント提示を出し渋る何も知らないめんどくさいクライアントも存在するので、最初に各種のアカウント関連を全て提示してもらうほうがベターな場合も多い。
ドメイン契約/サーバー契約/Google Appsメール契約も全て制作側で持てればベストですが、個人をターゲットにレンタル共有サーバーが広がった現在、難しい場合もあります。
作業量予測を出来る経験や能力を見積担当者が持っているか?
見積は「ど定番」ではない部分を漏れなく考慮して、ルールを決めて提示する事が大切で、その場でマニュアル通りの返事は完全な自爆行為。
経験/技術/作業量予測/原価計算能力が無い人が行うと簡単に見積は赤字になりますが、工夫無く正直に原価計算をした正当な金額でも受注できません。
何でも屋ではコスト競争力を作り出せないので、量産できる「ど定番」に条件を絞り込んで、なおかつ条件を先出しで提示して中身の選択肢を与えないパッケージ販売であれば3000円とか5000円でOKです。
本当に上手な見積を作られるという事は価値ある技術に値します。
クライアントにわがまま放題を言わさせない「パッケージ化」も金額設定では大切な考え方です。
さくらの初期ドメインから独自ドメインへのリダイレクト
やっと、やり方です、笑。ドキュメントルート直下に/test/ディレクトリを作り、そのディレクトリにサーバーコントロールパネル内の「ドメイン詳細設定」で独自ドメインnishi.comを「マルチドメインとして使用する(推奨)」でさくらのサーバーコントロールパネルで割り当てた事を前提とします。
この割り当て作業の検証にFreenomのいじり倒しも悪影響して、異常に時間を奪われました。数時間とか平気で作業停止して、他の作業をせざる負えなくなります。
# ルート直下の/test/ディレクトリを独自ドメインnishi.comにリダイレクト Redirect permanent /test/ http://nishi.com/
※ディレクトリ名や独自ドメインは任意のものに書き換えてください。.htaccessが無い場合は自分で作りましょう。
ディレクトリ一覧を隠す
さくらインターネットのスタンダードプラン1つの契約で複数のWEBサイトを運営する場合、ドキュメントルート直下にドメイン別のディレクトリを設置して整理するのが定石です。他社レンタル共有サーバーで複数のドメインで複数のWEBサイトを運営する場合も同じです。
サーバー運営を考えると絶対にドメイン別のディレクトリに別けるべきです。別けないで複数WEBサイトを運営すると初期のドキュメントルート内がカオスになり、非常に使いにくくなります。サーバーのディレクトリとドメインの割当てのスキルはWEB担当者必須スキルです。
さくらインターネットの場合は、ディレクトリ一覧が初期ドメインでブラウザから丸見えです。セキュリティとして最悪です。以下をドキュメントルート直下の.htaccessに記載してください。
# ディレクトリ一覧を隠す。表示させない DirectoryIndex index.html index.htm index.shtml index.php index.cgi .ht
www有りの独自ドメインをwww無しにリダイレクト
/test/ディレクトリの中の.htaccessに以下を書き加えます。.htaccessが無い時は自分で作ってください。上流にロードバランサーなどが無いか?リクエストのHTTP_HOSTがApacheに届くまでの整合性をしっかり確認する事が大事です。
# www無し RewriteEngine on RewriteCond %{HTTP_HOST} ^www\.nishi\.com [NC] RewriteRule (.*) http://nishi.com/$1 [R=301,L]
RewriteCondは、おそらくRewriteConditionの略。
%{}は後方参照の呼び出し向けで必要な場合 %1 や %2 として呼び出す。
HTTP_HOSTは、リクエストヘッダに書かれているHostヘッダ内容そのまま、HTTP_HOST : www.nishi.com:80 の様な感じ。
RewriteCond(後方参照は%)とRewriteRule(後方参照は$)を考える場合、マッチとか条件判定をする各箇所の正規表現が/var/www/・・・の様なサーバー(ファイルシステム)内の絶対パスを指しているのか?http://www.nishi.comの様なリクエストドメインを指しているのか?をはっきりさせて考える必要があります。
後方参照を考えるとRewriteRuleの「$1」は使い方として怪しい気がします。すみません。
[NC]は大文字小文字を問わない、という事を意味します。
www無しの独自ドメインをwww有りにリダイレクト
ここ最近は、www有りの方がもうダサくないですか?一応書きましたが・・・。
# www有り RewriteEngine on RewriteCond %{HTTP_HOST} ^nishi\.com [NC] RewriteRule (.*) http://www.nishi.com/$1 [R=301,L]
www有無の柔軟性とグーグルサーチコンソール初期設定について
wwwの有り無しの設定は、グーグルサーチコンソールの初期設定で以下の様な説明があり、ここでwww無し設定はアウトです。おそらくサーチコンソールの設定が出来ないです。必要な時に、www有り無しの両方に柔軟に対応できるように「マルチドメインとして使用する(推奨)」をサーバーコントロールパネルで選んでおくことが大切です。他社のクラウドでしたが、SSLの場合もwwwの有無の切替の柔軟性が重要だった記憶があります。
ドメインに www を含むバージョンと www を含まないバージョンの両方について所有権の確認が必要になることがあります。使用するドメインを設定すると、クロールとインデックス作成の両方に影響があるため、そのウェブマスターが両方のバージョンを所有していることを確認する必要があります。通常、どちらのバージョンも物理的に同じ場所を指しますが、そうではない場合もあります。通常は、ドメインの一方のバージョンを確認できれば、独自の確認手法を使用してもう一方のバージョンも簡単に確認できます。ただし、確認ファイル、メタタグ、DNS レコードを削除した場合は、確認を再度行う必要があります。
独自ドメインで独自SSLを試したい場合
スタンダードプランで無料で独自ドメインのSSLのやり方を自分で検証したい方は、ネットオウルのSSLボックスで無料SSLのLet’s EncryptのDV(ドメイン認証)使う事が出来ます。
DV(ドメイン認証)なので、決済システムや個人情報を扱うWEBサイトではなく、利用はブログサイトまでにする事が常識です。
お金と個人情報を含むWEBサイトであれば、SSLにはEV認証か企業認証を使いましょう。
ルート権限が無い共有サーバーでは、仮想マシンでサーバー証明書の取得を行って、改めて共有サーバーにサーバー証明書を移し替える必要がありますが、SSLボックスはサーバー証明書を仮想マシンもコマンド操作も無しで無料取得できます。
全ての共有サーバーで出来るかどうかわかりませんが、さくらインターネットのスタンダードプランについては出来ます。
SSLボックスはcertbot-auto renewコマンドが使えず、サーバー証明書の自動更新が出来ない為、更新1ヶ月前に送られてくるお知らせメールをきっかけに毎回手動更新が必要でめんどくさいです。無料なので文句は言えません。更新周期は3ヶ月です。