CentOS 5.11 で SPDYを使いたい(その2 - GCCバージョンアップからの目的達成編)
前回の続き・・・
この投稿は、2014年11月06日にQiitaに投稿した物です。 前回無事にApacheのバージョンアップができたので喜び勇んでmod_spdyをインストールした。 でも、ここでもつまずいたのでログを残しておきます。
mod_spdyのインストール
rpm持ってきてインストールするだけ簡単簡単!
$ wget https://dl-ssl.google.com/dl/linux/direct/mod-spdy-beta_current_x86_64.rpm $ sudo rpm -U mod-spdy-beta_current_x86_64.rpm $ sudo service httpd restart
と思って速攻導入してみたら・・・Apacheが起動しない・・・ 以下がエラーの内容
Starting httpd: httpd: Syntax error on line 214 of /etc/httpd/conf/httpd.conf: Syntax error on line 1 of /etc/httpd/conf.d/spdy.conf: Cannot load /usr/lib64/httpd/modules/mod_spdy.so into server: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.11' not found (required by /usr/lib64/httpd/modules/mod_spdy.so) [FAILED]
どうやら、/usr/lib64/libstdc++.so.6が古いためGLIBCXX_3.4.11が無いというエラーのようだ・・・困った。 確認したら確かにない・・・
$ strings /usr/lib64/libstdc++.so.6 | grep GLIBCXX GLIBCXX_3.4 GLIBCXX_3.4.1 GLIBCXX_3.4.2 GLIBCXX_3.4.3 GLIBCXX_3.4.4 GLIBCXX_3.4.5 GLIBCXX_3.4.6 GLIBCXX_3.4.7 GLIBCXX_3.4.8 GLIBCXX_FORCE_NEW
調査の結果GCCを新しくすれば良いようだが、ここはCentOS 5。yumで簡単にとはいかない・・・ 渋々ソースからコンパイルした 手順は、以下のページをそのままそっくり実行した。唯一の違いはバージョンが4.6.3って事くらい。
https://gcc.gnu.org/wiki/InstallingGCC
あと、makeに2時間くらい掛かりました・・・
GCCのビルド&インストールが完了したところで、インストールディレクトリをみると新しいlibstdc++.so.6.0.16ができてた。 念のため、中身も確認
$ strings $HOME/gcc-4.6.3/lib64/libstdc++.so.6.0.16 | grep GLIBCXX GLIBCXX_3.4 GLIBCXX_3.4.1 GLIBCXX_3.4.2 GLIBCXX_3.4.3 GLIBCXX_3.4.4 GLIBCXX_3.4.5 GLIBCXX_3.4.6 GLIBCXX_3.4.7 GLIBCXX_3.4.8 GLIBCXX_3.4.9 GLIBCXX_3.4.10 GLIBCXX_3.4.11 GLIBCXX_3.4.12 GLIBCXX_3.4.13 GLIBCXX_3.4.14 GLIBCXX_3.4.15 GLIBCXX_3.4.16 GLIBCXX_FORCE_NEW GLIBCXX_DEBUG_MESSAGE_LENGTH
できてる! あとは、/usr/lib64にコピーしてシンボリックリンク作れば!
$ cp $HOME/gcc-4.6.3/lib64/libstdc++.so.6.0.16 /usr/lib64 $ ln -s libstdc++.so.6.0.16 libstdc++.so.6
ここまでやって、Apacheを再起動したら無事にSPDYが利用可能となりました!
CentOS 5.11 で SPDYを使いたい(その1 - Apacheバージョンアップ編)
はじめに
この投稿は、2014年11月05日にQiitaに投稿した物です。 お仕事の都合でCentOS 5.11(x64)のApacheでWebサーバを立てているのですが、どうしてもmod_spdyを利用したかったのでいろいろと作業しまました。そのログです。
mod_spdyのシステム要件
mod_spdyのrpmパッケージをダウンロードできるサイトmod_spdy — Google Developersで確認したところ要件は以下の2つのみ
mod_sslはすでに有効なので、Apacheのバージョンを確認した
# httpd -v Server version: Apache/2.2.3 Server built: Sep 16 2014 11:05:09
要件満たさず・・・ というわけで早速、Apacheのバージョンアップから!
Apacheのバージョンアップ
普通にyumしても最新版なので、CentALTリポジトリを有効にしてApacheをバージョンアップすることにした
まずは、リポジトリを使えるように・・・っと
# rpm -Uvh http://mirror.sysadminguide.net/centalt/repository/centos/5/x86_64/centalt-release-5-3.noarch.rpm
これで、CentALTリポジトリからApacheインストールできると思いきや、なんと403になる。。。
# yum --enablerepo=CentALT update httpd Loaded plugins: fastestmirror http://centos.alt.ru/repository/centos/5/x86_64/repodata/repomd.xml: [Errno 14] HTTP Error 403: Forbidden Trying other mirror. Error: Cannot retrieve repository metadata (repomd.xml) for repository: CentALT. Please verify its path and try again
調査したところ、ミラーサイトを指定しなければいけないようなので速攻対応
# vi /etc/yum.repos.d/centalt.repo
[CentALT] name=CentALT Packages for Enterprise Linux 5 - $basearch #baseurl=http://centos.alt.ru/repository/centos/5/$basearch/ baseurl=http://mirror.sysadminguide.net/centalt/repository/centos/5/$basearch/ enabled=0 gpgcheck=0
baseurlのみ変更し、いざ再実行!
# # yum --enablerepo=CentALT update httpd Dependencies Resolved ======================================================================================== Package Arch Version Repository Size ======================================================================================== Updating: httpd x86_64 2.2.27-1.el5 CentALT 1.3 M Installing for dependencies: apr-util-ldap x86_64 1.4.1-1.el5 CentALT 14 k httpd-tools x86_64 2.2.27-1.el5 CentALT 68 k Updating for dependencies: apr-util x86_64 1.4.1-1.el5 CentALT 80 k httpd-devel x86_64 2.2.27-1.el5 CentALT 146 k httpd-manual x86_64 2.2.27-1.el5 CentALT 1.1 M mod_ssl x86_64 1:2.2.27-1.el5 CentALT 91 k Transaction Summary ======================================================================================== Install 2 Package(s) Upgrade 5 Package(s) Total download size: 2.7 M Is this ok [y/N]:
おおっ!無事にApache 2.2.27がリストアップされています! そのまま"y"を押すと無事にバージョンアップされました!
# httpd -v Server version: Apache/2.2.27 (Unix) Server built: Apr 9 2014 23:20:37
やったね(^_^)v
長くなったのでmod_spdyのインストールは次の投稿で・・・