Setup Ubuntu Server


WEBサーバ の変更点

  • 追加された行はこの色です。
  • 削除された行はこの色です。
  • WEBサーバ へ行く。

#contents
*Apache2のインストール [#rf7cf819]

 $ sudo apt-get install apache2

**動作確認 [#s6264f7f]
Windowsのブラウザでhttp://192.168.0.100/を開いてエラーにならないかを確認する。デフォルトでは"It works!"と表示される。

**設定ファイルの説明 [#eb6de08c]
設定ファイルは/etc/apache2以下にある。

,apach2.conf,メインの設定ファイル
,envvars,環境変数を設定するファイル。apache2.confから呼ばれる。
,mods-available,利用可能なモジュールの一覧。xxx.confは設定ファイルで、xxx.loadは読み込むためのファイル。ここにあるファイルはapache2からは読み込まれない。
,mods-enabled,apache2が読み込むモジュールの一覧、mods-availableにあるファイルへのシンボリックリンクをはって利用する。apache2.confから読み込まれる。
,httpd.conf,空のファイル。apache2.confから読み込まれる。
,sites-available,利用可能なサイト一覧。バーチャルホストで定義されている。
,sites-enabled,apache2から読み込まれる。sites-available内のファイルへのシンボリックリンクをつくる。

**ServerNameの設定 [#ea8a6f8c]
デフォルトだとApache2の起動時にドメイン名の警告が出るので、設定を変える。ServerNameはVirtualHostで設定するので.localをつけてしまう。

$ sudo vi /etc/apache2/httpd.conf 

以下の行を追加
 ServerName myhost.example.com.local

*DDNSでつくったホスト名をApache2に登録する [#j754f0a6]
ここでは/var/wwwをドキュメントを置くディレクトリにする。そのまえにデフォルトのサイトのディレクトリも/var/wwwとなっているのでこれを/var/www/defaultに移動する。

 $ sudo mkdir /var/www/default
 $ sudo mv /var/www/index.html /var/www/default/

$ sudo vi /etc/apache2/sites-available/default 

変更前
 DocumentRoot /var/www/
 ...
 <Directory /var/www/>

変更後
 DocumentRoot /var/www/default/
 ...
 <Directory /var/www/default/>

apache2をリスタートしてからWindowsでhttp://192.168.0.100/へアクセスしてエラーが出ないか確認する。
 $ sudo /etc/init.d/apache2 restart

*myhost.example.comをApache2に登録する [#z7191db8]
(myhost.example.comは取得したDDNS名に置き換えてください。)

***ドキュメントのディレクトリを作成する。 [#bb6511e4]
 $ sudo mkdir /var/www/myhost.example.com

***適当なドキュメントを作成する。 [#t044404c]
$ sudo vi /var/www/myhost.example.com/index.html

 <html>
 <head>
 <title>myhost</title>
 </head>
 <body>
 myhost works.
 </body>
 </html>

***サイトの設定ファイルを作成。 [#s4144f18]

$ sudo vi /etc/apache2/sites-available/myhost.example.com

 <VirtualHost *>
   ServerName myhost.example.com
   DocumentRoot /var/www/myhost.example.com
   ErrorLog /var/log/apache2/myhost.example.com-error.log
   LogLevel warn
   CustomLog /var/log/apache2/myhost.example.com-access.log combined
 </VirtualHost>

Interpidの場合は"<VirtualHost *>"の代わりに"<VirtualHost *:80>"とする。この行は/etc/apache2/sites-available/defaultを見て同じにすればいい。

***このファイルを利用可能にする。 [#z46874f5]

 $ cd /etc/apache2/sites-enabled/
 $ sudo ln -s ../sites-available/ubusrv.example.com

***サーバを再起動する。 [#s3b470a3]
 $ sudo /etc/init.d/apache2 restart
*一時的にhostsファイルを編集する [#wd8f6cf2]
この状態でWindowsからhttp://myhost.example.comにアクセスしても、ネームサーバは192.168.0.100を返してくれないので、今つくったサイトにアクセスできない。そこで一時的にhostsファイルを編集する。

***hostsファイルの編集 [#bb134dc9]
Windowsのテキストエディタで C:\WINDOWS\system32\drivers\etc\hostsを開き以下を追加。

 192.168.0.100	myhost.example.com

apache2をリスタートしてからWindowsでhttp://myhost.example.com/へアクセスし上で作成した/var/www/myhost.example.com/index.htmlが表示されるかを確認する。

$ sudo /etc/init.d/apache2 restart

*ログを見る方法 [#w1662a67]
apache2がうまく動かなかったりcgiやPHPがうまく動かないときはログを見ることになる。tail -fを利用して動的にログを監視できる。

 $ tail -f /var/log/apache2/*

この状態でブラウザなどでサーバにアクセスしてログへの追加を確認できる。

*外部からアクセスできるかを確認する [#t1e93f6e]
外部のプロキシサーバを利用できる場合は、それを利用すれば確認できる。あるいは外部から自分にアクセスしてくれるようなサービスを使えば確認できる。例えばhtml lintや翻訳のページなどで自分のページを指定すればいい。
外部のプロキシサーバを利用できる場合は、それを利用すれば確認できる。あるいは外部から自分にアクセスしてくれるようなサービスを使えば確認できる。例えばhtml lintや翻訳のページなどで自分のページを指定すればいい。また[[tor:http://www.torproject.org/]]を使ってアクセスもできる。