XAMPPとダイナミックDNSでAlexaと連携する自宅サーバを構築
![](https://android-smart.com/f/2020/10/xampp_and_ddns_004-210x157.png)
Alexaに自作のスマートホームスキルを導入すれば、「定型アクション」を通じてAlexaやスマートホーム機器を様々なツールやサービスと連携させられる。
定型アクションから自宅のパソコン上のプログラムを実行させるには、パソコン上にWebサーバを構築してPHPなどのスクリプトを設置し、自作スマートホームスキルの擬似デバイスの作動時のアクセス先に設定しよう。
パソコン上にWebサーバを構築するには、ApacheやPHPなどの定番プログラムをまとめて導入出来る「XAMPP」というパッケージがおすすめだ。
また、自宅の回線のIPアドレスは停電やルーターの再起動で代わる可能性があるので、自宅サーバに一定のホスト名でアクセス出来るようにする「ダイナミックDNS」のサービスにも登録しておこう。
擬似センサーによる定型アクションの起動だけを使用する場合は、自宅サーバの構築は不要だが、今回あんスマが用意したトリガースクリプトを実行するにはPHPが必要なので、未導入の場合はXAMPPでインストールするといいだろう。
XAMPPを導入しHTTPサーバを起動
まずはXAMPPのサイトからパッケージをダウンロードしてインストールを行おう。
「ダウンロード」ページの「その他のダウンロード」からは、ZIPを解凍するだけでインストールせずに使えるポータブル版や旧バージョンなどのダウンロードも可能だ。
・XAMPP Installers and Downloads for Apache Friends
XAMPPのポータブル版をダウンロードしてXAMPPを設置したいフォルダに解凍したら、「setup_xampp.bat」を実行しよう。
次に、XAMPPのフォルダ内の「apache」→「conf」フォルダにある「httpd.conf」をメモ帳などのテキストエディタで開き、「Listen 80」となっている行を探して、数字を49152~65535の適当な数に書き換えよう。
このようにして待ち受けポート番号を変えておく事で、サイバー攻撃の標的になりにくくなるぞ。
XAMPPのフォルダ内の「xampp-control.exe」を実行し、言語(英語/ドイツ語)を選択すると、このような画面が表示される。「Apache」の行の「Start」をクリックすれば、HTTPサーバが起動するぞ。
「Config」で設定画面に進み、「Autostart of modules」の「Apace」と「Start Control Panel Minimized」にチェックを入れて保存し、Windowsのスタートアップにxampp-control.exeのショートカットを入れておけば、Windowsの起動時に自動的にHTTPサーバを起動させられる。
ネットワーク設定の変更
インターネット上からルーターを経由してパソコンにアクセス出来るようにするために、ルーターの設定画面で「IPマスカレード」「静的NAT」「ポートマッピング」「ポートフォワーディング」などという名称の項目を探し、設定を行おう。WAN側(インターネット)からの先ほどhttpd.confで設定した番号のポートにアクセスがあったときに、パソコンの同じ番号のポートに転送するように、ポート番号とパソコンのローカルIPアドレスを設定しておく。
また、パソコンのローカルIPアドレスが再起動などで変わらないように、DHCPでの自動割り当てではなく手動で指定するように設定しておく必要がある。Windowsのバージョンによって設定画面に辿り着く手順が異なるので、下記のページなどを参考に設定しよう。
ルーター側に割り当てアドレスの手動指定などの機能が用意されている場合は、そちらを使ってもいいだろう。
ダイナミックDNSを設定
次に、ルーターの再起動や停電でグローバルIPアドレスが変わっても同じホスト名で自宅サーバにアクセス出来るように、ダイナミックDNSサービスに登録を行おう。今回は「DDNS Now」というサービスでの例を紹介するぞ。
最初に利用する場合は、「新規登録」欄に希望するサブドメイン名とパスワードを入力して「登録する」を押すだけでいい。
ダイナミックDNSサービスは他にも多数あるので、好みのホスト名が欲しい場合は探してみよう。
なお、パスワードに一部の記号が含まれていると、IPアドレスの登録更新用URLに組み込むときにエンコードが必要で面倒くさいので、英数字のみで長めのパスワードにしておくといいだろう。
登録が完了するとこのような画面が表示され、「ホスト名」の欄に表示されているアドレスで自宅サーバにアクセス出来るようになる。
ブラウザのアドレスバーで、取得したホスト名の後に「:」に続いてhttpd.confで指定したポート番号を付けたアドレスを入力して、このようなXAMPPのデフォルト文書の画面が表示されれば、自宅サーバの構築は完了だ。
停電やルーターの再起動でIPアドレスが変わったときに登録情報を自動更新されるようにするには、XAMPPのフォルダの「apache」→「bin」にある「curl.exe」のショートカットを作成し、プロパティで「リンク先」に半角スペースに続いて「https://f5.si/update.php?domain=(ユーザ名)&password=(パスワード)」のようなURLを追加した物をスタートアップに登録して、パソコンの起動時に自動実行されるようにしておくといいだろう。
パソコンをUPS(無停電電源装置)に繋いでいたりして、ルーターのインターネット接続のみがリセットされる可能性がある場合は、タスクスケジューラーなどで定期実行するようにしておくといいぞ。
DDNS Nowの「更新方法の解説」のページでは他の更新方法も紹介されているので、好みの方法で自動更新させよう。
関連記事
自宅サーバにPrivoxyとairproxyを設置して通信量削減体制を構築 特集その1
Wi-FiのDNSサーバ設定を変更して通信の高速化やトラブルの解消
プロキシを経由してWebにアクセスするなら「Firefox」
【基本設定】Wi-Fiアクセスポイントの詳細オプションでプロキシやIPアドレス固定、DNSサーバの設定
ConnectBotのリモートポート転送で端末上のIP Webcamなどのサーバにモバイル回線経由でアクセスする
Android3.1以降ではWi-Fiアクセスポイントごとにプロキシサーバの設定が可能
Internet SharerとFreeCapでUSBテザリング環境を構築しよう 特集その2
メールはGmailで一括管理するのがスマートだぞ
【Lightning Launcher eXtreme】「ダイナミックテキスト」で様々な情報を格好良く表示
2020年10月31日06時40分 公開 | カテゴリー: ライフハック | キーワード:チップス | Short URL
ツイート
最新記事
- L字90度直角設計の変換アダプタ!10Gbps高速伝送&5A高速充電!
- 冷感×冷風で1秒即冷え!冷却プレートとファンの併用で暑い夏も涼しく!
- 暑い夏でも快適に過ごせる!冷却プレート搭載のハンディファン!
- 1台多役の卓上クーラー!送風も加湿も冷却もこれ1台におまかせ!
- 9枚羽根の強力ファンで全身を涼しく!屋外作業に必須の空調服!
- 水や氷を使って冷たい風を!寝ながらでも使えるコンパクトな冷風扇!
- 取付工事不要のスポットクーラー!効果的・快適・涼しい移動式!
- コンパクトなのに20L大容量の冷蔵庫!保温庫にもなるので通年使える!
- タブレットをより個性的にするAndroid14搭載!10インチの使いやすいタブレット!
- 最大15W出力のワイヤレス充電機能付きスマホホルダー!安心のPhilips製!
- コンパクトなポータブルハードディスク!WindowsでもMacでもつかえる!
- フルキーパンチなしデザイン!耐久性が高いメカニカルキーボード!
- 自宅で楽しめる4Kプロジェクター!小さいのに非常に高性能!
- まさに雨のような音!唯一無二の魅力的なキーボード!
- もう離さない!超強力マグネット搭載のエアコン車載ホルダー!
- 目を引くオリジナルデザイン!軽くて使いやすいゲーミングマウス!
- ガジェットの仕分けが簡単に!きれいに収納してテーブルをスッキリ!
- もう失敗しない!ガイド付きで間違いなく貼れるガラスフィルム!
- たっぷり入ってコンパクト!大容量20Lのポータブル冷蔵冷凍庫!
- ゲーミングから音楽鑑賞まで対応するスピーカー!ライト効果で暗闇でカッコよく使える!
- テレビの音が耳元ではっきり聴ける!セリフを際立たせて聴く調整もできる!
- 耳を塞がないオープンイヤー型ワイヤレスイヤホン!Bluetooth5.3搭載で低遅延高速転送!
- テレビが変わるサウンドバー!3種のスピーカーユニットで低音域から高音域まで!
- 風の出る照明!天井から風を送ってエアコン効率をあげよう!
- USB-C単ポートで140W出力対応!あっという間にスマホの充電が終わるモバイルバッテリー!
- ミッキーマウスアイコンデザインのハンドストラップ!柔らか素材でスマホに傷がつきにくい!
- ボトル型浄水器でいつでもおいしい水を!持ち運べる浄水器!
- スマホに装着して落下保護!カメラに装着して安心のハンドストラップ!
- パワフルなのに、やさしい運転音!プラズマクラスター搭載のサーキュレーター!
- 超強力なハンディファン!5000mAh内蔵バッテリーで長持ち!