-天気予報コム-

Flag counter

« LD-BBR/Bをいじる | トップページ | MSN Web Messenger ベータ版 »

鯖いじり大会

えーと、httpd-2.0.50が何とか入ったので、メモを書き留めます。ま、連れのbbsにメモ書きしたものの転載ですけど。

1.既存のApache・MySQL・PHPの削除
元々のパッケージはすべてrpmで入っていたので基本的にrpm -eで削除。
ただし、依存性の関係でperl-DBD-MySQLとmysqlは相互に依存していたので、rpm -e --nodepで消した。
<消したバージョン>
httpd-2.0.40-21.11
php-4.2.2-17.2
mysql-3.23.58-1.9

2.LAMPパッケージの導入
インストールは面倒なので以下でLANPパッケージを使用
/etc/apt/sources.list に以下を追加。
rpm http://www.softagency.co.jp/mysql/Downloads/redhat/9 CURRENT softagency fedora freshrpm

ややこしくなると困るので、すでにあった以下の行より上に記述した。
rpm http://ayo.freshrpms.net redhat/9/i386 os updates freshrpms
rpm http://download.fedoralegacy.org/apt redhat/9/i386 os updates legacy-utils

ちなみに、tar.gzにしなかったのはパッケージ管理が楽なのとになんとなくtar.gzが
個人的に好きでなかったりするからでした(笑)。

で、aptを導入済みなのでaptでMySQLとhttpdとphpは以下で取得。
http://softagency.co.jp/mysql/LAMP/download.html
ちなみにphp4.3以降は国際化パッチは本家に取り込まれてるらしいのでそのまま取得。
あと、httpdはDSOが有効でないとダメだけど、多分大丈夫でしょう。

apt-get install MySQL-client MySQL-shared MySQL-server MySQL-devel MySQL-embedded MySQL-Max MyODBC
apt-get install httpd php-mysql mod_auth_mysql mod_ssl
apt-get install httpd-devel php-devel php-imap php-ldap php-manual php-mhash php-odbc
apt-get install mod_perl mod_auth_pgsql mod_python webalizer redhat-config-httpd

 一番下の行は、rpm -eで消したから何となく入れてみただけだったりする。

→mod_perlとmod_auth_pgsqlとmod_pythonで引っかかる
----------------------------------------------------
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
mod_auth_pgsql: Depends: httpd-mmn (= 20020628)
mod_perl: Depends: httpd-mmn (= 20020628)
Depends: libapr.so.0
Depends: libaprutil.so.0
mod_python: Depends: httpd-mmn (= 20020628)
E: Broken packages
----------------------------------------------------
なので、以上を外してapt-get installする。
apt-get install webalizer redhat-config-httpd


で、結局入ったのは以下のバージョン。
httpd-2.0.48-1.2
php-4.3.6-0.9
MySQL-server-4.0.20-1.9

3.各種設定
/etc/httpd/conf/httpd.confに以下を追加。

# 2004/06/15 platon [add start]
LoadModule php4_module /usr/lib/httpd/modules/libphp4.so
#AddModule mod_php4.c
AddType application/x-httpd-php .php
# [add end]

※AddModuleはApache2.0では使わないらしいのでコメントアウト。
 参考にした本ではApache1.3系を使っていたので書いていたみたい。
 とりあえず、上記の設定でApacheの起動を確認。

参考にした場所一覧。
http://php.s3.to/tt/linst.php
http://softagency.co.jp/mysql/LAMP/download.html
http://www.jpring.net/jitaku/redhat9-no.html
http://www.jpring.net/jitaku/redhat9+apache2.0.48+php-4.3.4-ok.html
http://php.s3.to/man/install.apache.html

ここまでにすでに実施したこと。
■LAMPのインストール
■とりあえず、Apacheの起動
■とりあえず、MySQLの起動
■MySQLのアカウントの整理
■MySQLへのサーバ外からのアクセス(CSEで確認)

次にすること。
■InnoDB型のテーブルを作る。それに伴って、設定ファイルを書き換える。
■セキュリティをさらに固める。
mysqlアカウントってログインスクリプトは/bin/falseにせんでええのかな。
他のデーモン用アカウントもそう(rpmとかも/bin/falseにしなくて良い?)。
サーバ外からCSEでrootアカウントで接続すると接続できるが一部エラーが出ている。
■PHPの設定
■Apacheの設定


■httpd-2.0.50へのupdate
rpmで入れたいので、rpmbuildを使用してtarボールからrpmファイルを作成する。

[root@gajo download]# rpmbuild -ta httpd-2.0.50.tar.gz
エラー: Failed build dependencies:
db3-devel is needed by httpd-2.0.50-1
[root@gajo download]# rpm -q db3-devel
パッケージ db3-devel はインストールされていません

■db3-develをrpmfindで探す
http://www.rpmfind.net/linux/rpm2html/search.php?query=db3-devel&submit=Search+...&system=&arch=

→よく調べると。RHL9ではdb3-develではなく、db4-develが入ってる見たい。
 ということで、httpd.specの以下の行を書き換え
BuildPrereq: openldap-devel, db3-devel, expat-devel, findutils, perl, pkgconfig

BuildPrereq: openldap-devel, db4-devel, expat-devel, findutils, perl, pkgconfig

さらに再度tar.gzに戻してからrpmbuildにかける
→tar.gz.のファイル名を変えた場合は下の行も書き換えないとダメだったみたいけど、
同じパスにoriginalのtarボールがあったのでそのままでやった。
Source0: http://www.apache.org/dist/httpd/httpd-%{version}.tar.gz

あと、2.0.49のときと2.0.50でhttpd.specの差分で気になったところ。
mpmbuild prefork --enable-mods-shared=all \
--enable-ssl --with-ssl \
--enable-deflate \
--enable-proxy --enable-proxy-connect \
--enable-proxy-http --enable-proxy-ftp \
--disable-ext-filter \
--enable-cache --enable-mem-cache \
--enable-file-cache --enable-disk-cache \
--enable-ldap --enable-auth-ldap \
--enable-logio

それから、このままだとインストールディレクトリが違ったり設定ファイル周りがおかしくなりそう。

とりあえず、リンク。
http://www.atmarkit.co.jp/flinux/rensai/linuxtips/530mkrpmfs.html
http://www.atmarkit.co.jp/flinux/rensai/linuxtips/486mkrpmfromtar.html
http://www.rpmfind.net/


しかし、rpmbuild始めてから40分以上経つのにまだ終わらない。
やっぱりedenだからしょうがないかねぇ。

結局エラーが出ました。

エラー: Installed (but unpackaged) file(s) found:
/usr/lib/httpd/build/config.nice
/usr/lib/libapr-0.a
/usr/lib/libapr-0.la
/usr/lib/libaprutil-0.a
/usr/lib/libaprutil-0.la
/usr/share/man/man8/apachectl.8.gz
/usr/share/man/man8/httpd.8.gz
/var/www/error/README


RPM build errors:
File listed twice: /etc/httpd/conf/ssl.conf
Installed (but unpackaged) file(s) found:
/usr/lib/httpd/build/config.nice
/usr/lib/libapr-0.a
/usr/lib/libapr-0.la
/usr/lib/libaprutil-0.a
/usr/lib/libaprutil-0.la
/usr/share/man/man8/apachectl.8.gz
/usr/share/man/man8/httpd.8.gz
/var/www/error/README


あーだこーだしてるうちに、下のページを参考にしてhttpd.confを設定したら
phpもうまく動いたようです。
http://kitty.plala.jp/APACHE.html

といってもhttpd 2.0.49なのが問題ですけど…。

あと、ちょっとメモ。
http://www.netspice.co.jp/Technic/security/access_logOfSEARCH

そーいえばPHPも脆弱性の問題出たみたいですな。これもupdateしなきゃ。


やっとここの方法でsrpmファイルが出来ました。
http://alectrope.ddo.jp/mt/archives/2004/07/12/apache_tarball_to_rpm


…ってかいつのまにかApache User Groupで2.0.50のrpmとかsrpm配ってるし…。
http://www.apache.jp/dist/httpd/binaries/rpm/SRPMS/
http://www.atmarkit.co.jp/flinux/rensai/linuxtips/413rebuilderr.html

 ということで、上記サイトでhttp-2.0.50のtarボールを取得したのち、srpmファイルに変換して、
これよりrpmbuildでrpmファイルを生成しました。けど、インストール時にエラーがでたので
httpd-devel-2.0.49をアンインストール後、httpd-2.0.50とhttpd-devel-2.0.50を--forceオプションで
入れました。httpd.confの設定変更が少々いりましたがhttpdの起動まで確認できました。

« LD-BBR/Bをいじる | トップページ | MSN Web Messenger ベータ版 »

「パソコン・インターネット」カテゴリの記事

コメント

コメントを書く

コメントは記事投稿者が公開するまで表示されません。

(ウェブ上には掲載しません)

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/29112/1162267

この記事へのトラックバック一覧です: 鯖いじり大会:

« LD-BBR/Bをいじる | トップページ | MSN Web Messenger ベータ版 »

無料ブログはココログ
2016年11月
    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30