![]() |
| Home | Diary | Resource | Link |
自宅にサーバーを構築する理由として,自分で好きに使えるWEBサーバーが欲しいという
理由の人は結構多いのではないでしょうか。私が自宅でサーバーを構築した理由は,
ある先輩から,「画像をすき放題置けるWEBサーバーが欲しい」という依頼を受けた事から
始まりました。
自宅でサーバーを構築するメリットとしては,以下の点があると思います。
今は大容量のハードディスクも安いですし,ハード的に容量がネックになる事はあまりない
でしょう。デメリットとしては電気代がかかると言う点でしょうか。
私はWEBサーバーとしてはApacheを採用しました。LinuxでWEBサーバーと言えばApache
と言う先入観のみで採用してしまいました。他のWEBサーバーについては,まったく
知らないので比較はできませんが,モジュールを組み込む事でいろいろな事ができたり,
柔軟に設定できたりと,大変満足しています。
$ emerge apacheインストールされたApacheのバージョンは2.0.50 でした。
Gentoo Linux ではApacheをインストール直後のデフォルト設定でとりあえずの動作確認はできます。
Apacheを起動します。
$ /etc/init.d/apache2 start
他のPCのWEBブラウザからURLにIPアドレスを用いて接続すると、Apacheのテストページが見えます。
ApacheをインストールしたサーバーのIPアドレスが 192.168.1.1の場合は、URLに
http://192.168.1.1
と入力します。
サーバーを起動した時にApacheも自動的に起動するように,Apacheをdefaultの
runlevelに加えます。
rc-update add apache2 default
GentooでのApacheの設定ファイルは、/etc/apache/confの中にあります。
Apacheはこのディレクトリにある複数のファイルから設定を読み込み動作します。
具体的には modules.d 配下のファイルや commonapache2.confファイル等を
読み込んでいます。
私はいろいろなファイルに設定を追加すると,何がなんだかわからなくなりそうなので
基本的に/etc/apache2/conf/apache2.confを編集するようにしています。
ServerName www.gside.orgまた、確認しておきたい設定項目として以下のものがあります。
Port 80 DocumentRoot /var/www/localhost/htdocs
・Port
WEBサーバーのサービスが稼動するポート番号を記述します。
・DocumentRoot
DocumentRootとなるシステム上のディレクトリ名を記述します。
ここにWEBに公開するファイルを置くことになります。
上記例では、ブラウザから
http://tma2002.homedns.org/index.html
を指定すると、
/var/www/localhost/htdocs/index.html
のレスポンスがブラウザに返されます。
稼動中のApacheの設定を変更したとき,設定ファイルの構文に誤りがあるままにApacheを
再起動すると,Apacheeは起動に失敗します。設定ファイルを正しく修正するまでは
WEBにアクセスできない時間が発生してしまうため,よろしくありません。
設定ファイルの構文チェックを行った後にApacheを再起動すれば,Apacheが起動に失敗する
可能性も低く,ユーザーがWEBサイトにアクセスできない時間も極短時間ですみます。
Apacheには設定ファイルの構文が正しい事を確認するためのツールがあります。
あくまで文法上の間違いを検出するツールですが,Apacheを再起動する前に最低限
のチェックを行えます。使用法は以下の通りです。
$ apache2ctl configtestSyntax OK と表示されれば、文法上の間違いはありません。
ファイアーウォールの設定等でポート80番が塞がれていると,外部からWEBサイトにアクセス
する事ができません。(他にも様々な原因がありますが)
外部から、WEBページが見れている事を確認するためには、WebSitePluseのWebSite test
が便利です。下の「Hostname」と書かれてある入力項目に、ホスト名を入力し
「Go!」ボタンを押し、
Server responded normally to all tests
と表示されれば、外部からも正常に見れています。
デフォルトの状態でサーバーを動作させると、ブラウザでの表示時に、文字化けが発生しました。
これは、Apacheの設定でデフォルトのキャラクタセットがiso-8859-1となっているためです。
Apacheのデフォルトのキャラクタセットは,HTML文書の metaタグによるキャラクタセットの
指定より優先されます。
このため,ブラウザは西ヨーロッパ言語でエンコードを行ってしまい,文字化けしてしまいます。
以下のように設定する事で解消しました。
#文字化け対策 AddDefaultCharset off
・AddDefaultCharset
AddDefaultCharset On'の場合、デフォルト文字セット iso-8859-1
で応答します。この場合、METAタグで指定された文字列は無視されます。
また、他の文字列を指定する事も出来ます。
#文字化け対策 ja を先頭にします。 LanguagePriority ja en da nl et fr de el it kr no pl pt pt-br ltz ca es sv tw
・LanguagePriority
foo.html がリクエストされ、foo.html.ja と foo.html.en
が両方存在し、 ブラウザが言語の優先順位を提供してない場合は
foo.html.ja が返されます。
| Index |
|
Apacheのインストールと基本設定 ApacheでのCGIの設定と設置 Apacheでのバーチャルホストの設定 ApacheでのWEBDAVの設定 Basic認証の設定(ファイル認証) Basic認証の設定(DB認証) ApacheでのSSLの設定 SSIの設定と利用 |