ホスト番号11,000周辺のどこかで、私は本当に自分が今までに下したすべての決断に疑問を抱きました。劇的な方法ではなく — むしろ、おそらく500エントリ用に設計されたスキーマを持つ成長し続けるデータセットであなたが自分をコーナーに塗ったことを実現する静かで具体的な恐怖のようなものです。それはHostlistでした。ウェブホストのディレクトリ。すべてのホスト、またはできるだけ近いものです。
実際に何が起こったかをお伝えします — アーキテクチャの選択、データの悪夢、それがクリックした瞬間、そして今日から始めたなら完全に異なる方法で行うビット。
Webホスティングディレクトリが必要な理由
正直に言うと?私は不快になりました。Seahawkのクライアント向けにリサーチを行っていました — ホストを移行する必要があった中堅SaaS — そして、包括的で最新の両方のディレクトリが見つかりませんでした。ほとんどは、中立的なふりをしている薄いアフィリエイトページか、2017年に廃止されたホストをまだ掲載していた時代遅れのリストのどちらかでした。andcurrent. Most were either thin affiliate pages pretending to be neutral, or outdated lists that still featured hosts that had gone under in 2017.
ウェブホスティング業界には、数千のアクティブなプロバイダーがあります。数十ではなく。数千です。共有ホスト、管理されたWordPressホスト、VPSプロバイダー、ベアメタル専門家、聞いたことのない地域プレイヤー。誰もそれを正しくマップしていません。だから私は思いました:やります。6週間、私は自分に言いました。
6週間よりもかなり長くかかりました。
ただし、市場がその直感を検証しました。ニッチディレクトリがわずかな規模でも何ができるかを見てください—Soak Oregonは、シンプルな温泉ディレクトリですが、わずか25,000の月間訪問者数で毎月約1,000ドルの広告収益を生み出しています。これは誤字ではありません。25,000訪問者です。ターゲットを絞ったディレクトリの経済学は、一般的なコンテンツサイトとは本当に異なります。Soak Oregon, a simple hot springs directory, pulls roughly $1,000 a month in ad revenue on just 25,000 monthly visitors. That's not a typo. 25,000 visitors. The economics of a well-targeted directory are genuinely different from a general content site.
誰も話さないデータ問題
ここがほとんどのディレクトリ構築ガイドが完全に役に立たないところです。カテゴリーとリスティングフィールドをセットアップするように言われます。いいでしょう。彼らが言わないことは、25,000の正確で構造化されたレコードを収集することは、まったく異なるクラスの問題だということです。
最初のアプローチは、週末に急いで組み立てたスクレイピングレイヤーと手動調査でした。スクレイパーは問題ありませんでした。データは混乱していました。ホスティングプロバイダーは常に価格を変更します。3つの異なるブランド名を持っているものもありました。リセラーのリセラーであるもの—同じ基盤となるインフラストラクチャが15の異なるロゴを付けています。重複排除だけで3週間かかりました。datawas chaos. Hosting providers change their pricing constantly. Some had three different brand names. Some were resellers of resellers — the same underlying infrastructure wearing fifteen different logos. Deduplication alone cost me three weeks.
もっと早く決めておきたかったいくつかのこと:
- ブランドごとではなく、法人ごとに1つの正規レコード。一部のホストには4つのブランドがあります。彼らはまだ1つのホストです。, not per brand. Some hosts have four brands. They're still one host.
- すべてのフィールドに鮮度日付。行の「最終更新」だけでなく—フィールドごとに。価格設定はフィーチャーセットよりも速く古くなります。Not just "last updated" on the row — per field. Pricing goes stale faster than feature sets.
- 初日からの人間レビューキュー。自動取り込みは最初のパスで問題ありません。ただし、ライブになる前に間違っているように見えるレコードにフラグを立てるプロセスが必要です。Automated ingestion is fine for first-pass. But you need a process for flagging records that look wrong before they go live.
特に3番目のポイント。早期にそれをスキップして、ホストがプランをリブランドし、スクレイパーが古いページ構造で照合していたため、価格帯が完全に間違っているリスティングの塊になってしまいました。それを見つけるのに長時間かかりました。
正しいテックスタックの選択
私はWordPressを選びました。わかってます。でも聞いてください。
このスケールのディレクトリでは、成熟したプラグインエコシステムと深く理解できるクエリレイヤーが必要です。小規模なプロジェクトでDirectoristを使用していて、それはうまく機能しました — 柔軟なスキーマ、Gutenbergで動作、適切なデフォルト設定。Hostlistの場合、既製のプラグインが予想していなかったフィールド(データセンターの場所、ピアリング構成、コントロールパネルのバージョンなど)が必要だったため、カスタム投稿タイプレイヤーを上に追加しました。Directoriston smaller projects and it held up well — flexible schema, works with Gutenberg, sensible defaults. For Hostlist specifically I paired it with a custom post type layer on top, because I needed fields that no off-the-shelf plugin anticipated (things like data-centre locations, peering arrangements, control panel versions).
実際に重要な4つのページ — そしてこれはニッチに関係なくどのディレクトリにも当てはまると思いますが — は以下の通りです:
- 明確な目的、おすすめリスティング、そしてシンプルな検索を備えたホームページ
- 高速フィルタリング機能を備えたアーカイブ/ブラウズページ(ここはユーザーの80%が滞在する場所です)
- 完全なレコード、構造化データマークアップ、そして申し立て/報告する方法を備えた個別リスティング
- 投稿ページ(最初はユーザー投稿を行わない場合でも、準備ができた状態で構築してください)
アーカイブページの重要性を強調することはできません。ユーザーはあなたのホームページに来てからナビゲートするわけではありません。彼らはGoogleからアーカイブページにランディングし、4秒以内にデータが信頼できるかどうかを判断します。まずそのページを正しく取得してください。thennavigate. They land on an archive page from Google and decide within four seconds whether the data looks credible. Get that page right first.
スタックについて変更したいこと
カスタムテーブル。コア掲載データをポストメタから適切なリレーショナルテーブルに移動させるべきでした。もっと早くやるべきだったのです。WordPressのポストメタは5,000レコード程度までは問題ありません。それを超えるとクエリが厳しくなります。大規模なウェブアプリケーションのパフォーマンス考慮事項は現実です——RAM、クエリ最適化、キャッシング戦略——ローンチをしようとしているときには、これらのことを計画していません。performance considerations for large-scale web applicationsare real — RAM, query optimisation, caching strategy — none of which you plan for when you're just trying to get the thing launched.
ディレクトリ自体のホスティング(本当に厄介)
ウェブホスティングディレクトリを構築してから、それをホストするホストを選択する必要があるという特別な皮肉があります。最初の1年で3つのホストを経験しました。
最初はマネージド WordPress ホストでした。インポートプロセスで動作がおかしくなりました——WP-CLI 経由で 25,000 投稿が入力されることは、彼らのインフラストラクチャが設計したものではありませんでした。2番目は VPS で、すべてを自分で処理しました: リバースプロキシとしての Nginx、オブジェクトキャッシング用の Redis、ファイアウォール用の ufw。そのセルフホスト型アーキテクチャアプローチは、何をしているかわかっているときに素晴らしく機能します——完全な可視性、謎のスロットリングなし、キャッシュヘッダーを制御できます。しかし、木曜日の午後11時に何かが壊れて、それはすべてあなたの問題です。That self-hosted architecture approach works brilliantly when you know what you're doing— total visibility, no mystery throttling, you control the cache headers. But it's also 11pm on a Thursday when something breaks and it's entirely your problem.
マネージド VPS にルートアクセス付きで着地しました。両方の最高です。Nginx をフロントに保ち、静的アセット用に CDN レイヤーを追加しました。それ以来、機能しています。
教訓: どのホストを選択しても、コミットする前に実際のデータ量でテストしてください。サンプルではなく。実際のインポート。500投稿のブログを完璧に処理するホストが、データベースの再構築中に 25,000 レコードを投げると、時々完全に機能しなくなります。test it with your actual data volume before you commit. Not a sample. Your real import. A host that handles a 500-post blog with flying colours will sometimes completely fall over when you throw 25,000 records at it during a database rebuild.
収益化: 試したこと、うまくいったこと
2019年、あるクライアントが私に言いました、「金はトラフィックではなく掲載にある」。その時は完全には理解していませんでした。今は理解しています。
Hostlist の収益はいくつかの場所から来ました。実際に針を動かしたものの大体の順序:
- フィーチャー/プレミアム掲載——ホストは関連カテゴリページの上部に表示されるためにお金を払います。これは機能します。CPM は高いです。なぜなら意図が高いからです。— hosts pay to appear at the top of relevant category pages. This works. The CPMs are good because the intent is high.
- 年間更新による認証バッジ — フルプレミアムリスティングよりも軽いタッチですが、積み重なります。— lighter-touch than a full premium listing, but it adds up.
- ディスプレイ広告 — これは後から追加したもので、かなり パフォーマンスが最も低いです。オーディエンスが小さく、特定的すぎて、大規模な広告ネットワークが適切に価値を見出せません。— I added this late and it's the weakest performer by quite a lot. The audience is too small and too specific for broad ad networks to value properly.
- リード生成 / アフィリエイト — ここでは慎重でした。Hostlist が他の偏った比較サイトのように見えないようにしたかったからです。紹介契約は少数ですが、すべて開示され、制限されています。— I was cautious here because I didn't want Hostlist to look like every other biased comparison site. I have a small number of referral arrangements but they're disclosed and limited.
私がしなかったのは、基本的なリスティングは無料で、アップグレードは有料というフリーミアムモデルです。検討しました。ウェブホスティングの問題は、プラットフォームに値するプロバイダーほど、露出のためにディレクトリを必要としないということです。小規模なホストはリスティングの恩恵をより受けますが、彼らも最も小さな予算を持つ者です。経済状況が厳しいです。notdone is a freemium model where basic listings are free and upgrades are paid. I thought about it. The problem with web hosting specifically is that the providers worth having on your platform are also the ones least likely to need your directory for exposure. The smaller hosts benefit more from being listed, but they're also the ones with the smallest budgets. The economics are awkward.
Brilliant Directories および類似のプラットフォームは、より コミュニティ志向のディレクトリ — ウェディングベンダー、子育てリソース — でこれを理解しています。そこではメンバーは本当にローカルで見つけられたいのです。ウェブホスティングは異なります。グローバルで極度に競争的な市場です。have this figured out for more community-oriented directories — wedding vendors, parenting resources — where the members genuinelywantto be found by locals. Web hosting is different. It's a global, hyper-competitive market.
大規模ディレクトリの SEO: 実際に役立ったポイント
25,000 のエントリーを持つディレクトリは、正しく処理すれば SEO アセットです。処理しなければ SEO 負債です。
実際に役立った具体的なこと:
- リスティングごとに個別、テンプレート化されているが変動するメタ説明 — ホスト名 + 「ウェブホスティングレビュー」だけではなく。実際のデータポイント(価格帯、主な用途、創業年)を引き出して、本当に異なる説明を生成しました。— not just the host name + "web hosting review". I pulled in actual data points (price tier, primary use case, founding year) to generate descriptions that were genuinely different.
- カテゴリーとタグページには本当の編集コンテンツがある — カードのグリッドだけではなく。「マネージド WordPress ホスティング」が実際に何を意味するかを説明する 200 語の導入部、一度書き、カテゴリーに適用。Google は誰かがそのページについて考えたことを見たいのです。— not just a grid of cards. A 200-word intro explaining what "managed WordPress hosting" actually means, written once, applied to the category. Google wants to see that someone thought about the page.
- 構造化データ(Schema.org)— すべてのリスティングに LocalBusiness または Organization マークアップがあります。これを正しく追加した後、クリックスルーレートが明らかに改善されました。— every listing has
LocalBusinessorOrganizationmarkup. Click-through rates improved noticeably after I added this properly. - フィルター組み合わせの正規化 — これはほぼ私を殺しました。ファセット検索は数千の URL 組み合わせを生成します。それらを正規化してクリーンなアーカイブ URL に戻さないと、1 か月以内にクロールバジェットが破産します。— this nearly killed me. Faceted search generates thousands of URL combinations. If you don't canonical them back to the clean archive URL, you'll be crawl-budget bankrupt within a month.
- アクティブなホストのみのインデックス登録 — 操作中であることを確認できないものは noindex にします。デッドリスティングはリスティングなしより悪いです。— I noindex anything I can't confirm is still operating. Dead listings are worse than no listing.
早期に間違えたこと: すべてをすぐにインデックス登録しました。ほぼデータがないスタブを含めて。Google がクロールして薄いページを見つけ、ドメイン全体を一時的に部分的に割引きました。教訓: インデックスに値するまでインデックス登録しないでください。don't index it until it's worth indexing.
異なる方法でやること
いくつか、素早く:
- より小さく、より絞ったニッチから始めてください。「Web ホスティングディレクトリ」は巨大です。「管理された WordPress ホスト」で立ち上げるべきでした — おそらく 300~400 レコード — コンセプトを証明し、その後拡張します。
- フロントエンドの前にデータパイプラインを構築してください。私はそれを逆にやりました。インポートプロセスが堅実になる前にフロントエンドがライブになり、ライブデータを常にパッチしていました。beforethe front end. I did it backwards. The front end was live before the import process was solid, which meant I was constantly patching live data.
- 初日からリスティングに料金を請求してください。月 1 ポンドでも。無料リスティングはフォームを下手に記入し、更新リクエストに応じないホストを引き付けます。わずかな支払いは品質をフィルタリングします。
- 適切な貢献者システムにもっと早く投資してください。私が受け取った最高のデータ修正の一部は、エラーを見つけたユーザーからでした。最初の 8 か月間、それらを受け入れる構造化された方法がありませんでした。
正直なところ、Hostlistを構築することは、私が取り組んだ中で最も技術的に興味深いサイドプロジェクトの一つであり、同時に最も謙虚にさせられるプロジェクトでもあります。ディレクトリ形式は外見からは欺くほど単純に見えます。
---
FAQ
Hostlistの構築にはどのくらい時間がかかりましたか?
最初のバージョン — 粗く、データギャップが満載ですが、公開されたもの — は夜間と週末を含めて約3ヶ月かかりました。本当に誇りに思える状態にするには、約1年かかりました。データ品質の作業は本当に終わることがありません。
ディレクトリ機能にはどのWordPressプラグインを使用しましたか?
Directoristをベースとして、その上に相当なカスタム開発を加えました。より小さいディレクトリの場合は、ほぼそのままで使用します。25,000エントリでは、結局カスタムクエリを書く必要があります — プラグインは単に出発点を提供するだけです。
Webホスティングディレクトリは実際に収益を上げることができますか?
できます。私のものはコストをカバーしその先の収益をあげていますが、これがパッシブインカムマシンだと主張するつもりはありません。マージンは、プレミアムリスティングを売却できるかどうかに大きく依存します。適度なトラフィックレベルでは、ディスプレイ広告だけではそこまで到達できません。
25,000のリスティングを最新の状態に保つにはどうしますか?
不完全です。価格ページの変更をチェックするスケジュール済みスクレーパー、コミュニティ報告の修正キュー、トラフィック上位500のホストの手動レビューサイクルを組み合わせています。ロングテールは時間とともに劣化します。それは受け入れています。
最初のプロジェクトとして大規模なディレクトリを構築することをお勧めしますか?
いいえ。500件のレコードでできることから始めてください。人々がそれを使っていることと、収益化の道があることを証明してください。その後、スケールしてください。大規模なディレクトリの技術的およびデータ管理の複雑さは本当に自明ではなく、アイデアを検証した後にこれらの問題に直面したいのであって、その前ではありません。Thenscale. The technical and data-management complexity of a large directory is genuinely non-trivial, and you want to encounter those problems after you've validated the idea, not before.
---
ディレクトリについては、それは長期戦です。コンテンツサイトではなく、データ資産を構築しています。トラフィックはゆっくり成長し、仕事は地味で、最初の6ヶ月間は誰も気にしているのか疑問に思うでしょう。しかし、データが良く、ニッチが正しい場合、ディレクトリは他のフォーマットで複製するのが難しい一種の引力を開発します。それが私が引き続きそれらを構築する理由です。
