Linux/Apache2.2インストール

CentOS5.2でApache2.2インストール

dokuwiki.fl8.jp転載済み

環境

CentOS5.2
Apache2.2.9
mod_rewrite
mod_ssl

コンフィグ

# tar zxvf httpd-2.2.9.tar.gz
# cd httpd-2.2.9
# ./configure --prefix=/usr/local/apache2 --enable-so --enable-rewrite=shared --enable-ssl --enable-speling=shared
・
・
・
configure: error: ...No recognized SSL/TLS toolkit detected

enable-speling=sharedはmod_spelingを使用する場合に。

エラー対処

これでコンフィグ通ります。

# yum install openssl-devel

起動スクリプト用意

# cp /usr/local/src/httpd-2.2.14/build/rpm/httpd.init /etc/init.d/httpd
# chmod 755 /etc/init.d/httpd
  • PATHの修正
    # vi /etc/init.d/httpd
        54 #apachectl=/usr/sbin/apachectl
        55 apachectl=/usr/local/apache2/bin/apachectl
        56 #httpd=${HTTPD-/usr/sbin/httpd}
        57 httpd=${HTTPD-/usr/local/apache2/bin/httpd}
        58 prog=httpd
        59 #pidfile=${PIDFILE-/var/log/httpd/httpd.pid}
        60 pidfile=${PIDFILE-/usr/local/apache2/logs/httpd.pid}
  • chkconfigに登録
    # /sbin/chkconfig --add httpd
    # /sbin/chkconfig httpd on
  • スタート
    # /sbin/service httpd start

Apache起動で変なエラー

httpd: Syntax error on line 55 of /usr/local/apache2/conf/httpd.conf: Cannot load /usr/local/apache2/modules/libphp5.so into server: /usr/local/apache2/modules/libphp5.so: cannot restore segment prot after reloc: Permission denied

「SELinuxポリシーが適用されて、エラーの出たライブラリの

セキュリティコンテキストが適切に設定されていない」ことを意味するそうです。

対処

SELinuxを無効にするか、下のコマンド

chcon -c -v -R -u system_u -r object_r -t textrel_shlib_t libphp5.so

PHP

./configure --with-apxs2=/usr/local/apache2/bin/apxs \
--with-mysql=/usr/local \
--with-pgsql=/usr/local/pgsql \
--enable-cli \
--enable-pear \
--with-tsrm-pth \
--with-gd --with-zlib \
--with-freetype-dir=/usr/local \
--with-jpeg-dir=/usr/local \
--with-png-dir=/usr/local \
--enable-force-cgi-redirect \
--enable-mbstring \
--enable-mbstr-enc-trans \
--enable-trans-sid \
--enable-versioning \
--enable-gd-native-ttf \
--enable-gd-jis-conv

httpd.confに追加

AddType application/x-httpd-php .php .html