ワイルドカードDNSのアクセスをディレクトリに振り分け

個別にWordPressを設定した場合、ワイルドカードDNSを利用して、ディレクトリのアクセス先を変えると、手間なくホームページ領域を量産できます。この設定を利用すると、DNSサーバ設定、apache設定を変更せず指定のディレクトリにアクセスできます。ホームページディレクトリ名とホスト名を連動させ、アクセス先を振り分けます。つまり、ディレクトリを作成するだけで、ホスト名の違うホームページを立ち上げる事ができるようになります。

asf_logo_wide

設定例

*.hoge.hanakohoge.co.jp

へのアクセスに対し、/var/www/*を対応させる

*.hoge IN A xxx.xxx.xxx.xxx

アクセスされたホスト名にワイルドカードを利用して、アクセスするディレクトリを振り分けます。

etc/apache2/sites-available# a2enmod vhost_alias
Enabling module vhost_alias.
To activate the new configuration, you need to run:
 service apache2 restart

 

NameVirtualHost *:80
<VirtualHost *:80>
 ServerName hoge.hanakohoge.co.jp
 ServerAlias *.hoge.hanakohoge.co.jp
 ServerAdmin webmaster@localhost
 VirtualDocumentRoot /var/www/%1
 <Directory />
 Options FollowSymLinks
 AllowOverride None
 </Directory>
 <Directory /var/www/*>
 Options Indexes FollowSymLinks MultiViews
 AllowOverride All
 Order allow,deny
 allow from all
 </Directory>
 ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
 <Directory "/usr/lib/cgi-bin">
 AllowOverride None
 Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
 Order allow,deny
 Allow from all
 </Directory>
 ErrorLog ${APACHE_LOG_DIR}/error.log
 CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

設定を反映させます

a2ensite wordpress01
/etc/init.d/apache2 restart

上記設定例では、*にあたる部分が直接ディレクトリになるよう%1に対応しています。
ディレクトリへのワイルドカードは下記のようにあらわす事ができます。

 

%0       =test.hanako.com
%1       =test
%2       =hanako
%3       =com
%1.1     =t
%1.2     =e
%1.3     =s
%1.4     =t
%1.1+    =test
%1.2+    =est
%1.3+    =st
%1.4+    =t

関連コンテンツ