ApacheのVirtualHostでwwwのサブドメインをwwwなしのドメインにリダイレクトさせる
最終更新日: Update!!
以前はURLに「www」といったサブドメインをつけた表記が一般的でしたが、最近はURLは短い方がいいという考え方から「www」のサブドメインが無い表記が増えてきました。ただ、同じサイトでURLが2つもあるのは不自然なのでURLを統一してリダイレクトさせるようにしていきたいと思います。
今回はVPSサーバーでの運用を前提に、ApacheのVirtualHost機能で設定する方法についてまとめていきます。といっても、何行か追加するだけの簡単な作業です。ちなみにドメインは「お名前.com」での運用を想定した内容になります。
対象のドメインにチェックを入れて「次へ進む」をクリックし、遷移先ページの中程にある「DNSレコード設定を利用する」項目の「設定する」ボタンをクリックします。
DNSレコードの追加フォーマット部分で、サブドメインを設定した「Aレコード」を追加していきます。下記の通り入力していくのですが、ホスト名に今回のサブドメインである「www」を指定していきます。
・ホスト名は「www」を入力
・TYPEは「A」(IPアドレス)を入力
・TTLは「3600」と入力
・VALUEにはサーバーのIPアドレスを桁ごとに区切って入力
・状態は「有効」を選択
しばらくしてから「www」のサブドメインでアクセスするとサイトが表示されるのが確認できます。引き続き、本題であるリダイレクトの設定を行なっていきます。
wwwのサブドメイン設定の確認
まずその前に「www」のサブドメインが登録されているか(アクセスした時に表示されるか)を確認しておきます。サブドメインの登録と確認はドメインの管理元で行うことができます。もし、wwwのサブドメインが登録されていない(URLにアクセスしても表示されない)場合は登録作業を行う必要があります。今回の場合は「お名前.com」なので以下の順に進めていきます。 まずはドメイン管理のページへアクセスしてログインします。そして「ドメイン設定」のメニューから「ネームサーバーの設定」項目にある「DNS関連機能の設定」を選択します。



VirtualHostのリダイレクト設定
まずはVPSサーバーにSSHで接続して、rootユーザーに切り替えます。そしてApacheのVirtualHost設定ファイルである「vhost.conf」をvimエディタで開きます。※ファイル名はそれぞれ任意で指定したものになります# vim /etc/httpd/conf.d/vhost.confVirtualHost設定の中で、以下のようにリダイレクト設定を追記します。この設定では「http://www.example.com」といったwwwのサブドメインを含むURLでアクセスした場合、「http://example.com」のwwwのサブドメインが無いURLにリダイレクトさせるという内容になります。
// 変更前 <VirtualHost *:80> ServerName example.com DirectoryIndex index.php AddDefaultCharset UTF-8 DocumentRoot /var/www/html/[DIRECTORY NAME] <Directory "/var/www/html/[DIRECTORY NAME]"> Require all granted </Directory> </VirtualHost> ↓ // 変更後 <VirtualHost *:80> ServerName example.com DirectoryIndex index.php AddDefaultCharset UTF-8 DocumentRoot /var/www/html/[DIRECTORY NAME] // 下記4行を追記 ServerAlias www.example.com RewriteEngine on RewriteCond %{HTTP_HOST} ^www.example.com$ RewriteRule ^/(.*) http://example.com/$1 [R=301,L] <Directory "/var/www/html/[DIRECTORY NAME]"> Require all granted </Directory> </VirtualHost>複数サイトがある場合はそれぞれ同じように追記します。これでwwwのサブドメインURLにアクセスしてきちんとリダイレクトされるかどうかを確認します。 (参考) さくらVPSでwwwありドメインを設定&wwwなしにリダイレクト
sponserd
keyword search
recent posts
- Shopifyでのテーマ開発に便利なローカル環境を構築する#2:Shopify CLI
Shopifyでのテーマ開発に便利なローカル環境を構築する#2:Shopify CLI
- Shopifyでのテーマ開発に便利なローカル環境を構築する#1:Shopify Theme Kit
Shopifyでのテーマ開発に便利なローカル環境を構築する#1:Shopify Theme Kit
- Docker+Laravelでバックエンドの開発環境構築とウェブアプリケーション制作#7:動的ルーティングとデータベース更新処理
Docker+Laravelでバックエンドの開発環境構築とウェブアプリケーション制作#7:動的ルーティングとデータベース更新処理
- Docker+Laravelでバックエンドの開発環境構築とウェブアプリケーション制作#6:ミドルウェアの設定と認証ページ作成
Docker+Laravelでバックエンドの開発環境構築とウェブアプリケーション制作#6:ミドルウェアの設定と認証ページ作成
- Docker+Laravelでバックエンドの開発環境構築とウェブアプリケーション制作#5:ログイン認証機能の実装
Docker+Laravelでバックエンドの開発環境構築とウェブアプリケーション制作#5:ログイン認証機能の実装
- Docker+Laravelでバックエンドの開発環境構築とウェブアプリケーション制作#4:ログイン認証ユーザー作成
Docker+Laravelでバックエンドの開発環境構築とウェブアプリケーション制作#4:ログイン認証ユーザー作成
- Docker+Laravelでバックエンドの開発環境構築とウェブアプリケーション制作#3:静的ページの作成とルーティング
Docker+Laravelでバックエンドの開発環境構築とウェブアプリケーション制作#3:静的ページの作成とルーティング
- Docker+Laravelでバックエンドの開発環境構築とウェブアプリケーション制作#2:Laravelのインストール
Docker+Laravelでバックエンドの開発環境構築とウェブアプリケーション制作#2:Laravelのインストール
categories