VPSでWebサーバーを構築しよう(その2) 初期設定をしよう

前回はApacheとPHPをインストールするところまでを解説しました。今回はその続きで、ApacheとPHPの基本的な初期設定の手順を解説します。

 

■テキストエディタ(nano)の基本

■Apacheの設定

■PHPの設定

■Apacheの再起動と自動起動

 

 

■テキストエディタ(nano)の基本

Linuxでは、各種の設定はテキストファイルに記述することが一般的です。したがって、設定を行うには、テキストファイルを編集するソフト(テキストエディタ)が必要になります。

Linuxで動作するテキストエディタはいろいろあり、「vi」や「emacs」が有名です。ただ、これらはいずれもある程度慣れが必要で、初心者にはややとっつきにくいです。そこで本記事では、SSH上で動作して、かつ比較的シンプルで分かりやすい「nano」を使います。nanoは次のコマンドでインストールすることができます。

 

リスト nanoのインストール

sudo yum -y install nano

 

nanoで設定ファイルを編集するには、「sudo nano ファイル名」のようにコマンドを入力します。例えば、「/etc/hosts」という設定ファイルを編集する場合だと、次のコマンドを入力します。

 

リスト /etc/hostsファイルをnanoで編集する

sudo nano /etc/hosts

 

nanoを終了するには、Ctrl+Xキーを押します。ファイルの内容を書き換えていた場合、ファイルを保存するかどうかを尋ねるプロンプトが表示されます。「Y」のキーを押せば保存して終了し、「N」のキーを押せば保存せずに終了します。

 

図1 nanoの画面

図1 nanoの画面

 

 

■Apacheの設定

まず、Apacheの設定を行います。

CentOS 6にyumコマンドでApacheをインストールした場合、設定ファイルは「/etc/httpd/conf/httpd.conf」という名前です。したがって、「sudo nano /etc/httpd/conf/httpd.conf」のコマンドを入力すれば、設定ファイルを編集することができます。

 

・.htaccessの有効化

Apacheでは、.htaccessファイルを使って、Basic認証を設定したり、IPアドレスによるアクセス制限を行ったりなど、ディレクトリごとに設定を変えることがよくあります。

ただ、yumでインストールした時点では、.htaccessファイルを使えない設定になっています。.htaccessファイルを使う予定がある場合は、その設定を行います。

nanoでは、Ctrl+wキーを押すと、ファイル内での検索を行うことができます。「Search:」のプロンプトが表示されますので、検索するキーワードを入力します。

まず、Ctrl+wキーを押して検索の状態にして、「<Directory “/var/www/html”>」のキーワードで検索します。次に、再度Ctrl+wキーを押して、「AllowOverride None」のキーワードで検索します。そして、検索された行を「AllowOverride All」に書き換えます(「None」を「All」に書き換え)。

 

・CGIの有効化

掲示板やメールフォームのアプリの中には、CGI(※)として動作するものもあります。ApacheでCGIを動作させる場合、httpd.confでCGIを有効化する必要があります。

 

(※)CGI

「Common Gateway Interface」の略。Webブラウザなどのクライアントからアクセスがあったときに、何らかのプログラムを実行して、その出力をクライアントに返す仕組みを指します。

 

まず、「AddHandler」という設定を探します。Ctrl+wキーを押して検索する状態にし、「AddHandler cgi-script」で検索します。そして、検索された行で、先頭の「#」を削除して、コメントアウトされている状態を解除します。

また、「Options」の設定の行に、「ExecCGI」を追加することも必要です。まず、Ctrl+wキーで「<Directory “/var/www/html”>」の行を検索した後、再度Ctrl+wキーを押して「Options」の行を検索します。そして、その行の最後に「ExecCGI」を追加し、また途中にある「Indexes」を削除します。

.htaccessとCGIを両方とも有効化する場合、「<Directory “/var/www/html”>」の後の部分を次のように書き換えます。

 

リスト .htaccessとCGIを両方とも有効化

<Directory "/var/www/html">

・・・(途中略)・・・

Options Indexes FollowSymLinks

・・・(途中略)・・・

AllowOverride All

・・・(途中略)・・・

</Directory>

 

・設定の保存

ここまでが終わったら、Ctrl+Xキーを押してnanoを終了する状態にし、保存するかどうかのメッセージにたいしてYキーを押して保存します。

 

 

■PHPの設定

PHPにも多くの設定項目がありますが、最低限設定すべきところを紹介します。

前回の記事の通りにPHPをインストールした場合、設定ファイルは「/etc/php.ini」です。したがって、次のコマンドを実行すると、PHPの設定ファイルをnanoで編集する状態になります。

 

リスト PHPの設定ファイルをnanoで編集する

sudo nano /etc/php.ini

 

・タイムゾーンの設定

PHPでは日時関係の処理を行う機会もありますが、日本時間として正しく処理させるために、「タイムゾーン」を設定します。

/etc/php.iniをnanoで開いた後、Ctrl+wキーを押して、「date.timezone」のキーワードで検索します。すると、「;date.timezone =」という行が見つかります。次のように、この行の先頭の「;」を削除し、「=」の後に「Asia/Tokyo」を追加します。

 

リスト date.timezoneの行の設定

date.timezone = Asia/Tokyo

 

・送信できるデータのサイズの設定

PHPで作成されたWebアプリケーションでは、HTTPのPOSTメソッドを使って、ファイル等の大きなデータをアップロードすることもあります。ただ、今の時点では、サイズの上限がそれほど大きくないので、画像等の大きなファイルをアップロードしようとすると、制限にひっかかることがあります。

サイズの上限に関する設定として、「post_max_size」と「upload_max_filesize」があります。「post_max_size」は、POSTで送信できる最大のサイズを指定します。また、「upload_max_size」は、アップロードするファイルの最大のサイズを指定します。post_max_sizeは、upload_max_filesizeよりも大きな値にするようにします。

nanoでpost_max_size/upload_max_filesizeをそれぞれ検索して、必要に応じてサイズを書き換えます。例えば、post_max_size/upload_max_filesizeを、それぞれ32メガバイト/16メガバイトにする場合、次のように書き換えます。

 

リスト post_max_sizeの行の設定例

post_max_size = 32M

リスト upload_max_filesizeの行の設定例

upload_max_filesize = 16M

これらの書き換えが終わったら、php.iniファイルを保存して、nanoを終了します。

 

 

■Apacheの再起動と自動起動

ApacheやPHPの設定を書き換えたら、Apacheを再起動して、設定を有効にします。これは、次のコマンドで行います。

 

リスト Apacheの再起動

sudo service httpd restart

 

また、今の時点では、VPSを再起動したときに、Apacheは自動では起動しません。通常はVPSの起動時にApacheも自動起動したいです。そこで、次のコマンドを実行して、VPSの起動時にApacheも自動起動するようにします。

 

リスト Apacheの自動起動をオンにする

sudo chkconfig httpd on

 

 

 

 

うちだ
サービスクリエーション本部所属        (監修:とみなが)       

オススメ記事

関連サービス

VPS VPSクラウド