というわけで、2回目はLAMP環境を構築していきます。
Webサーバーとして動作させるものとしては有名な環境ですね。それぞれ
L | Linux |
A | Apache |
M | MySQL |
P | P言語(php,perl,python,…) |
を指します。今までの段階でLinuxは基本部分が終わりましたのでApacheやMySQLを入れていきましょう。
その前にリポジトリの拡充
CentOSの場合は標準のリポジトリのデータが古いことがとても多いです。
今回の場合でもMySQLのバージョンは未だに5.1系などとなっています。
各Linuxディストリビューションの考え方の差などもあるのでこの辺は一長一短ですが、余りに古いと機能が対応していない、という現象も出てくるので公式でなくても新しいバージョンを扱えるリポジトリを使うといいことがあります。
CentOSの場合は以下のリポジトリを追加することが多いです。
リポジトリ名 | リポジトリ設定パッケージ |
---|---|
EPEL | epel-release-6-8.noarch.rpm |
RepoForge(RPMForge) | rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm |
Remi | remi-release-6.rpm |
特に今回はMySQLとPHPでRemiのリポジトリからインストールを行います。 まずはこれらのリポジトリをyumで使用できるように設定します。
# rpm -ivh http://ftp.jaist.ac.jp/pub/Linux/Fedora/epel/6/x86_64/epel-release-6-8.noarch.rpm # rpm -ivh http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm # rpm -ivh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
なお、この中でRemiのリポジトリだけは特殊で追加しただけではyumでは有効になりません。
公式のリポジトリと重なるデータを扱っているためで、この場合は明示的に有効/無効を切り替えた方がいいです。
ちなみに追加したリポジトリからインストールするときには初めにPGPの署名確認を聞いてきますのでyで返答してOKです。
Apacheのインストール
で、いよいよApacheのインストールです。
# yum install httpd
インストールそのものはとってもつまらないです。はい。
が、設定がとても大変です。設定すべきこともたくさんありますし、設定ファイルそのものが複数に分割されていますし、間違えるとセキュリティホールを作ってしまうことにも。
まあ、今の段階ならインストールしてもポートはiptablesのおかげであいていないのでじっくりと設定をしていきます。
P言語系をインストール
で、P言語をインストールします。対象はperlとphpとします。
ちなみに追加モジュール関係はこの段階では入れません。
後で必要になったときに自分で追加してください。特にphpは基本モジュールだけでは足りないことが多いですので。
(追加したときはApacheにreload指示を行ってモジュールのロードを行う必要があります)
# yum install perl # yum install --enablerepo=remi --disablerepo=base,updates php # yum install mod_perl
phpはRemiにあるいるものを使います。競合しているリポジトリを無効状態としてインストールします。
MySQLのインストール
最後にMySQLをインストールします。ついでにphpのMySQL用モジュールも入れておきます。
# yum install --enablerepo=remi --disablerepo=base,updates mysql mysql-server # yum install --enablerepo=remi --disablerepo=base,updates php-mysql
ちなみに、依存性が解消できない時はあらかじめ依存性がかかっているものをインストールしてからやるといいです。
今回の場合はMySQLインストール前に
Error Package: mysql-server-5.5.34.1-el6.remi.x86_64 (remi) Requires: perl-DBI Error Package: mysql-server-5.5.34.1-el6.remi.x86_64 (remi) Requires: perl-DBD-MySQL
などと依存性エラーを言ってくることがあります。この場合はRequiresに書いてあるパッケージをインストールするために
# yum install perl-DBI perl-DBD-MySQL
とやって解決しておきます。
残りは次回に
SSLの設定やらMySQLの初期設定やらが残っていますので、そちらは次回です。