今更ですが
centos5.11のWEBサーバー構築について記載します
備忘録です
方針
・apacheとmysqlとphpのバージョンは固定にするために
ソースからコンパイルする方式をとっている
・SQLServerにつなぐ必要があったのでmssqlもいれる
・バージョンは以下のとおり
CentOS:5.11
apache:2.2.29
mysql:5.1.66
php:5.3.21
(古いwww)
・sudoのコマンドは省略しています
例)
make install
本来はいかのようになります
sudo make install
困ったらsudoしてください
1・準備
1-1・OSのインストール
centosのインストールは
http://ftp.riken.jp/Linux/centos/5/isos/x86_64/CentOS-5.11-x86_64-bin-DVD-1of2.iso
からダウンロードする
32ビットの場合は
http://ftp.riken.jp/Linux/centos/5/isos/x86_64/CentOS-5.11-x86_64-bin-DVD-1of2.iso
からダウンロードする
物理サーバーならDVDにする
VMサーバーやクラウドならこのままISOで使用する
なお2of2.isoは使わない
networkインストールという手があるが
DVDを落とすほうが楽なのでこちらにした
言語の設定:日本語
キーボードの設定:日本語
パーティション:すべて消してフォーマット
ネットワーク:環境によるので省略
マップ選択:アジア/東京
rootパスワード:passworddesuyo
インストールパッケージ:Desktop Gnodeをチェックはずす
今すぐカスタマイズを選択する
アプリケーション:エディタをはずす
ベースシステム:ダイヤルネットワークサポートをはずす
開発:開発ツールを選択
(ディスクトップは絶対にいれない!!)
1-2・SELINUXの停止
セキュリティ的にはよくないけど
FWは別に立てているので停止
vi /etc/selinux/config SELINUX=enforcing # ↓↓↓↓ SELINUX=disabled #enforcingをdisabled変更 #設定を反映するため再起動 shutdown -r now
1-3・開発ライブラリのインストール
yum install libmcrypt-devel -y yum install curl -y yum install curl-devel -y yum install libpng-devel -y yum install gcc* -y yum install libjpeg-devel -y yum install ncurses-devel -y yum install libxml2-devel -y yum install libpng-devel -y yum install vim-enhanced -y yum install ntp* -y
いれておかないとコンパイルでこけます
2・apacheのインストール
2-1・ソースのダウンロード解凍
cd /usr/local/src/ wget http://www.meisei-u.ac.jp/mirror/apache/dist//httpd/httpd-2.2.29.tar.gz tar zxvf httpd-2.2.29.tar.gz
ダウンロードできなない場合は最新にすればダウンロードできます
2-2・コンパイル(configureとmake)
cd httpd-2.2.29 ./configure --prefix=/usr/local/apache2/ --enable-so --enable-rewrite--enable-ssl=/usr/local/openssl make make install
2-3・動作確認
/usr/local/apache2/bin/httpd -v
2-4・ユーザーの設定
groupadd apache useradd -g apache -d /var/empty/ -s /sbin/nologin apache #useradd: warning: the home directory already exists. #Not copying any file from skel directory into it. #apacheユーザのホームディレクトリが作成済みのため。作成できなかった #apacheユーザでログインできない #問題なしという認識 vim /usr/local/apache2/conf/httpd.conf User daemon Group daemon # ↓↓↓↓ User apache Group apache
起動するユーザーを変更
っていうかデフォルトはapacheだろ!!
毎回めんどくさいです
2-5・もろもろの設定変更
vim /usr/local/apache2/conf/httpd.conf
フォルダ一覧を表示させない
Options Indexes FollowSymLinks
↓
#Options Indexes FollowSymLinks
もし外部に公開する場合は下記を明記する
ServerName XXXXXXXXX.com
(160行目付近)
2-6・ログ出力設定
mkdir /var/log/httpd cd /var/log chmod 755 httpd chown apache:apache httpd vi /usr/local/apache2/conf/httpd.conf
ErrorLog "/var/log/httpd/error.log"
#(190行目付近)
2-7・Vhostの設定
cd /usr/local/apache2/conf/extra mkdir site-configs vi /usr/local/apache2/conf/httpd.conf
最下部に以下を追加
Include conf/extra/site-configs/*
2-8・apacheの起動スクリプトの設定
cp /usr/local/src/httpd-2.2.29/build/rpm/httpd.init /etc/rc.d/init.d/httpd chmod 755 /etc/rc.d/init.d/httpd vi /etc/rc.d/init.d/httpd
3つ修正します
httpd=${HTTPD-/usr/local/apache2/bin/httpd}
pidfile=${PIDFILE-/usr/local/apache2/logs/httpd.pid}
check for 1.3 configuration
check13 () {
CONFFILE=/usr/local/apache2/conf/httpd.conf
再起動の設定を変更する
chkconfig --add httpd chkconfig httpd on chkconfig --list httpd
2-9・rewrite_moduleの設定
service httpd start cd /usr/local/src/httpd-2.2.29/modules/mappers /usr/local/apache2/bin/apxs -c mod_rewrite.c /usr/local/apache2/bin/apxs -ian rewrite mod_rewrite.la /usr/local/apache2/bin/apachectl graceful
2-10・OpenSSLをソースコードからインストール
最新バージョンを確認してからインストールしてください
cd /usr/local/src wget -c http://www.openssl.org/source/openssl-1.0.1g.tar.gz tar zxvf openssl-1.0.1g.tar.gz cd openssl-1.0.1g ./config --prefix=/usr/local/openssl --openssldir=/usr/local/openssl -fPIC make make install
この段階で手順がまじで長い!!
自動化したいが・・めんどくさい
いずれはしたい
っていうか
yumでインストールしたい!!