一般的に、Webサイトの場合、ドメイン以外にwww付きでもアクセスさせる場合が多い。
- example.com
- www.example.com
といった具合だ。
通常その場合、Apacheならば、httpd.confにて、virtualhost設定でServerAlias ディレクティブで設定することで実現できる。
example.comが基本の場合
<virtualhost *:80>
DocumentRoot /path/to/htdocs
ServerName example.co.jp
ServerAlias www.example.com
</virtualhost>
http://httpd.apache.org/docs/2.0/ja/mod/core.html#serveralias
たまにこんな要望があったりすることがある。
example.comドメインだけを見せたくて、www.example.comにアクセスされた場合にも、example.comを表示したい。という要望だ。
通常通り、virtualhost設定をし、そこでリダイレクトの設定をすることも出来るが、virtualhost設定内で済ませることも出来る。
<virtualhost *:80>
DocumentRoot /path/to/htdocs
ServerName example.co.jp
</virtualhost>
<virtualhost *:80>
ServerName www.example.co.jp
RewriteEngine on
RewriteRule ^(.*) http://example.co.jp$1 [R=301]
</virtualhost>
ステータスコードとして301を返すことで、永続的な移転ということを知らせることも出来る。
これの設定をするためにいろいろ試していたが、DocumentRoot設定がなくてもいいんだね。知りませんでした。
Subversionって知ってますか?
バージョン管理システムです。複数人で開発する場合に、他の人が修正したプログラムのソースファイル等を、間違って上書きしないようにするために使われることが多いです。
詳しくは Wikipediaとかもっとわかりやすく紹介してくれているサイトもありますので、そちらを参考にしてみてくださいね。
http://ja.wikipedia.org/wiki/Subversion
http://subversion.tigris.org/
もちろん、お仕事でも使ってます。
仕事では、Eclipse+Subclipseプラグインという環境で使ってたりします。
デザイナーさんは、TortoiseSVNとか使ってます。
で、自前でSubversionを入れたかというと、もちろん複数人開発をするわけでもないので、目的は違うところにあったりします。
「バージョン管理システム」というくらいなので、修正履歴が簡単に追えるのが目的。
ファイルを修正したりしていると、自分ひとりであっても、家と会社とか複数のPCで扱うと、毎回本番サーバからファイルをSCPでファイルを落としてきてから作業とか、それぞれの開発環境をまったく同じにしておくのが大変になったりしてきます。
今回、Subversionは、こちらのサイトを参考にし、yumでインストールしました。
http://www.magic3.org/sarucast/index.php?subversion…
発行したコマンドは以下。他にもディレクトリとか作ったりとかいろいろ作業はありましたが。
$ yum -y install subversion
$ yum -y install mod_dav_svn
$ svnadmin create XXX
あとは、Locationディレクティブを記述。
サイトを参考に普通にhttpd.confに書くと、意図していないバーチャルホスト上でもパスを指定すると見えてしまうことになる。
それはこまるので、VirtualHostディレクティブの中に書くことで特定のサブドメインでだけ見えるように制限できました。
参考:http://httpd.apache.org/docs/2.2/ja/mod/core.html#location
環境作ってみて、思ったのはyumってすばらしい。
楽天ブログと、ブログを書いていなかった時のmixiの日記の一部を移しました。
楽天ブログから移行は、一括のエクスポートの仕方がわからず、記事をコピペで移しました。
なんかプログラマらしからぬ単純作業だけど、またいろいろ考え出すと止まってしまいそうだたので、とりあえず手を動かしました。
飽きっぽい性格で、前にやっていたBlogもずいぶん放置してしましました。
過去の記事を移行して再開です。