Apache2にmod_layoutを使わせようとする。
事業用サイトのロゴ或いは著作権表示をカンタンにするため。
TangentOrgからModLayout 4.0.1aをダウンロードし、
適当なディレクトリでtar | gzip、
makeして make install
で、httpd.confに
LoadModule layout_module modules/mod_layout.so
を追加。
で、restartをかける。
…エラー。
今日は時間がないのでまた今度…。むぅ。
事業用サイトのロゴ或いは著作権表示をカンタンにするため。
TangentOrgからModLayout 4.0.1aをダウンロードし、
適当なディレクトリでtar | gzip、
makeして make install
で、httpd.confに
LoadModule layout_module modules/mod_layout.so
を追加。
で、restartをかける。
…エラー。
今日は時間がないのでまた今度…。むぅ。
しばらくの間、技術的な記事を書いていなかったので、
大規模に計画・実行。
まず、サーバを2台運用しているものを1台にする。
// 経費削減のため。=> Bフレッツで使用するISPを1つに。
1台のサーバで2つのドメインを運用する。
以後、「hoge.com」と「hoge.jp」とする。
// 実際、COMドメインとJPドメインなので。
T.Inaba家のネットワーク図 計画
ONU━ ns ━SWハブ┳ VoIPアダプタ
┃ ┗ 各クライアント
┃
ADSL(Y!BB)━ルータ┳家族が使うクライアント
┗BBTV
しょーもないネットワークです。
BBTVはなぜか見られないし。
Tepcoひかりは解約しました。
理由や考察はまた今度。
図のnsがサーバになります。
また、以下の構成を前提とします。
接続方式: PPPoE(Bフレッツ)
グローバルIP: 218.45.x.x/32 (固定IP)
ローカルIP: 192.168.0.1/24
UPnP対応(VoIPのため)、暫定的に各クライアントのデフォルトゲートウェイとする。
// もう1セッションはブロードバンドルータを購入してから。
では、まず現行サーバのファイルをバックアップ。
友人がWebサーバを使用しているため、
/home以下のそれぞれのファイルをtarでまとめる。
# tar cfv ./backup.tar ./*
backup.tar ファイルをクライアントにコピーする。
また、Apacheのバーチャルホストの設定をバックアップ。
私はバーチャルホストのみの設定を書いたファイルを
httpd.confでインクルードしているので、そのファイルを
クライアントにコピーします。
とりあえず他にバックアップが必要なものは思い当たらないので、
新サーバにFedora Core2をインストール開始。
以下次号。次号あるのかって話ですが。
大規模に計画・実行。
まず、サーバを2台運用しているものを1台にする。
// 経費削減のため。=> Bフレッツで使用するISPを1つに。
1台のサーバで2つのドメインを運用する。
以後、「hoge.com」と「hoge.jp」とする。
// 実際、COMドメインとJPドメインなので。
T.Inaba家のネットワーク図 計画
ONU━ ns ━SWハブ┳ VoIPアダプタ
┃ ┗ 各クライアント
┃
ADSL(Y!BB)━ルータ┳家族が使うクライアント
┗BBTV
しょーもないネットワークです。
BBTVはなぜか見られないし。
Tepcoひかりは解約しました。
理由や考察はまた今度。
図のnsがサーバになります。
また、以下の構成を前提とします。
接続方式: PPPoE(Bフレッツ)
グローバルIP: 218.45.x.x/32 (固定IP)
ローカルIP: 192.168.0.1/24
UPnP対応(VoIPのため)、暫定的に各クライアントのデフォルトゲートウェイとする。
// もう1セッションはブロードバンドルータを購入してから。
では、まず現行サーバのファイルをバックアップ。
友人がWebサーバを使用しているため、
/home以下のそれぞれのファイルをtarでまとめる。
# tar cfv ./backup.tar ./*
backup.tar ファイルをクライアントにコピーする。
また、Apacheのバーチャルホストの設定をバックアップ。
私はバーチャルホストのみの設定を書いたファイルを
httpd.confでインクルードしているので、そのファイルを
クライアントにコピーします。
とりあえず他にバックアップが必要なものは思い当たらないので、
新サーバにFedora Core2をインストール開始。
以下次号。次号あるのかって話ですが。
// Fedora Core2で確認。
// 多分、FC1とかRH9もこれでいいのかなぁ。(責任とらないょ)
普通にmakeしたらエラーが出る。
qmailを解凍したディレクトリにある、「error.h」を開き、
"3行目"を書き換える。
#include <errno.h>
というわけです。
uscpi-tcp-0.88でも同じエラーが出たので同様に書き換える。
// 多分、FC1とかRH9もこれでいいのかなぁ。(責任とらないょ)
普通にmakeしたらエラーが出る。
qmailを解凍したディレクトリにある、「error.h」を開き、
"3行目"を書き換える。
#include <errno.h>
というわけです。
uscpi-tcp-0.88でも同じエラーが出たので同様に書き換える。
私にとって欠かせないスクリプト言語です。
// 以下、suコマンドは省略。$が一般ユーザ、#がroot。
// 参考サイト http://eszs.itbdns.com/eszs.html
(1) libiconv
http://www.gnu.org/software/libiconv
ダウンロード・解凍・展開したら、そのディレクトリで
$ ./configure --prefix=/usr/local
$ make
# make install
(2) libjpeg
http://www.ijg.org/
ダウンロード・解凍・展開したら、そのディレクトリで
$ ./configure --enable-shared
$ make
# make install
(3) zlib
http://www.gzip.org/zlib/
ダウンロード・解凍・展開したら、そのディレクトリで
$ ./configure
# make
# make install
(4) libpng
http://www.libpng.org/pub/png/
ダウンロード・解凍・展開したら、そのディレクトリで
makefileのコピー
$ cp scripts/makefile.linux makefile
makefileの編集
$ vi makefile
#ZLIBLIB=/usr/local/lib
#ZLIBINC=/usr/local/include
ZLIBLIB=../zlib
ZLIBINC=../zlib
を、
ZLIBLIB=/usr/local/lib
ZLIBINC=/usr/local/include
#ZLIBLIB=../zlib
#ZLIBINC=../zlib
に書き換えて保存。
$ make
# make install
(5) Free Type
http://www.freetype.org/
ダウンロード・解凍・展開したら、そのディレクトリで
$ ./configure
$ make
# make install
(6) GD
http://www.boutell.com/gd/
ダウンロード・解凍・展開したら、そのディレクトリで
$ ./configure
$ make
# make install
// …手抜きっぽい。
(7) PHP
http://www.php.net/
ダウンロード・解凍・展開したら、そのディレクトリで
$ ./configure --enable-mbstring --enable-mbstr-enc-trans --enable-mbregex \
--enable-trans-s --with-zlib-dir=/usr/local/lib \
--with-jpeg-dir=/usr/local/lib --with-gd \
--with-freetype-dir=/usr/local/lib \
--with-png-dir=/usr/local/lib --with-iconv=/usr/local \
--with-apxs2=/usr/local/apache2/bin/apxs --with-mysql=/usr/local/mysql
$ make
# make install
php.ini(設定ファイル)のコピー
$ cp php.ini-dist /usr/local/lib/php.ini
Apacheのhttp.confに、以下の行を追加する。
AddType application/x-httpd-php .php
// なるべく同じような設定がある近くがいいかと。
で、インストールは完了。
Apacheを再起動し、PHPが動くかどうか確認する。
今回は以上。
// 以下、suコマンドは省略。$が一般ユーザ、#がroot。
// 参考サイト http://eszs.itbdns.com/eszs.html
(1) libiconv
http://www.gnu.org/software/libiconv
ダウンロード・解凍・展開したら、そのディレクトリで
$ ./configure --prefix=/usr/local
$ make
# make install
(2) libjpeg
http://www.ijg.org/
ダウンロード・解凍・展開したら、そのディレクトリで
$ ./configure --enable-shared
$ make
# make install
(3) zlib
http://www.gzip.org/zlib/
ダウンロード・解凍・展開したら、そのディレクトリで
$ ./configure
# make
# make install
(4) libpng
http://www.libpng.org/pub/png/
ダウンロード・解凍・展開したら、そのディレクトリで
makefileのコピー
$ cp scripts/makefile.linux makefile
makefileの編集
$ vi makefile
#ZLIBLIB=/usr/local/lib
#ZLIBINC=/usr/local/include
ZLIBLIB=../zlib
ZLIBINC=../zlib
を、
ZLIBLIB=/usr/local/lib
ZLIBINC=/usr/local/include
#ZLIBLIB=../zlib
#ZLIBINC=../zlib
に書き換えて保存。
$ make
# make install
(5) Free Type
http://www.freetype.org/
ダウンロード・解凍・展開したら、そのディレクトリで
$ ./configure
$ make
# make install
(6) GD
http://www.boutell.com/gd/
ダウンロード・解凍・展開したら、そのディレクトリで
$ ./configure
$ make
# make install
// …手抜きっぽい。
(7) PHP
http://www.php.net/
ダウンロード・解凍・展開したら、そのディレクトリで
$ ./configure --enable-mbstring --enable-mbstr-enc-trans --enable-mbregex \
--enable-trans-s --with-zlib-dir=/usr/local/lib \
--with-jpeg-dir=/usr/local/lib --with-gd \
--with-freetype-dir=/usr/local/lib \
--with-png-dir=/usr/local/lib --with-iconv=/usr/local \
--with-apxs2=/usr/local/apache2/bin/apxs --with-mysql=/usr/local/mysql
$ make
# make install
php.ini(設定ファイル)のコピー
$ cp php.ini-dist /usr/local/lib/php.ini
Apacheのhttp.confに、以下の行を追加する。
AddType application/x-httpd-php .php
// なるべく同じような設定がある近くがいいかと。
で、インストールは完了。
Apacheを再起動し、PHPが動くかどうか確認する。
今回は以上。
Bフレッツ再接続ー。
adsl-setupでカンタン。
VirtualHostで運用する。
今回はVirtualHost内でCGI(cgi-bin以外でも)/SSIが実行できるようにすることを主眼とする。
ドメインはhoge.jp、
ユーザはuser、
IPアドレスの内、xは何らかの数字を表す。隠し隠し。
ServerNameとかは割愛。
NameVirtualHost 61.127.x.x
<VirtualHost 61.127.x.x>
ServerAdmin webservice@hoge.jp
DocumentRoot /home/user/public_html
ServerName www.hoge.jp
Options Includes FollowSymLinks ExecCGI Includes
ErrorLog /home/user/httpd_error.log
CustomLog /home/user/httpd_access.log common
CustomLog /home/user/httpd_referer.log referer
CustomLog /home/user/httpd_agent.log agent
</VirtualHost>
これで一度Apacheを起動してみる。
# /usr/local/apache2/bin/apachectl configtest
Syntax OK
# /usr/local/apache2/bin/apachectl restart
/home/user/public_html
に、index.htmlを用意する。
もし、Permissionがおかしいとか言われたら、
第三者からも読み込みできるようにchmodする。
adsl-setupでカンタン。
VirtualHostで運用する。
今回はVirtualHost内でCGI(cgi-bin以外でも)/SSIが実行できるようにすることを主眼とする。
ドメインはhoge.jp、
ユーザはuser、
IPアドレスの内、xは何らかの数字を表す。隠し隠し。
ServerNameとかは割愛。
NameVirtualHost 61.127.x.x
<VirtualHost 61.127.x.x>
ServerAdmin webservice@hoge.jp
DocumentRoot /home/user/public_html
ServerName www.hoge.jp
Options Includes FollowSymLinks ExecCGI Includes
ErrorLog /home/user/httpd_error.log
CustomLog /home/user/httpd_access.log common
CustomLog /home/user/httpd_referer.log referer
CustomLog /home/user/httpd_agent.log agent
</VirtualHost>
これで一度Apacheを起動してみる。
# /usr/local/apache2/bin/apachectl configtest
Syntax OK
# /usr/local/apache2/bin/apachectl restart
/home/user/public_html
に、index.htmlを用意する。
もし、Permissionがおかしいとか言われたら、
第三者からも読み込みできるようにchmodする。
Knoppixはどうしたかって、聞かないでくださいよ。
/usr/local/srcにダウンロード。
バージョンは2.0.50
# wget http://www.apache.jp/dist/httpd/httpd-2.0.50.tar.gz
# tar zxvf httpd-2.0.50.tar.gz
# cd httpd-2.0.50
# ./configure --enable-module=so --enable-info=shared
--enable-status=shared
# make
# make install
# /usr/local/apache2/bin/apachectl start
http://[サーバのIP]/で確認。
httpd.confいじろうと思うけど、
Bフレッツが止められて(ぇ)いるので、
金払ってきます。…なんだかなぁ。
/usr/local/srcにダウンロード。
バージョンは2.0.50
# wget http://www.apache.jp/dist/httpd/httpd-2.0.50.tar.gz
# tar zxvf httpd-2.0.50.tar.gz
# cd httpd-2.0.50
# ./configure --enable-module=so --enable-info=shared
--enable-status=shared
# make
# make install
# /usr/local/apache2/bin/apachectl start
http://[サーバのIP]/で確認。
httpd.confいじろうと思うけど、
Bフレッツが止められて(ぇ)いるので、
金払ってきます。…なんだかなぁ。
ほとんどが転載かもしれない。
ソースを保存するパス = /usr/local/src
// libiconvのパッチ当て・インストール
$ wget ftp://ftp.ring.gr.jp/pub/GNU/libiconv/libiconv-1.8.tar.gz
$ wget http://www2d.biglobe.ne.jp/~msyk/software/libiconv-patch.html/libiconv-1.8-cp932-patch.diff.gz
$ tar zxvf libiconf-1.8.tar.gz
$ zcat libiconv-1.8-cp932-patch.diff.gz | patch -p0
$ cd libiconv-1.8
$ ./configure
$ make
$ su
# make install
// Samba3.0のインストール
$ wget ftp://ftp.samba.gr.jp/pub/samba/samba-3.0.4.tar.gz
$ tar zxvf samba-3.0.4.tar.gz
$ cd samba-3.0.4/source
$ LDFLAGS=-Wl,-rpath,/usr/local/lib ./configure --with-libiconv=
/usr/local/lib
$ make CFLAGS="-O2 -I/usr/kerberos/include"
$ su
# make install
// Samba3.0の設定
smb.confが無いよ!となったので、
$ cp /usr/local/src/samba/samba-3.0.4/examples/smb.conf.default
/usr/local/samba/lib/smb.conf
で、smb.confを編集
$ vi /usr/local/samba/lib/smb.conf
[global]に
dos charset = CP932
unix charset = EUCJP-MS
display charset = EUCJP-MS
を追加、
workgroupの項目をWindowsのワークグループと一致させる。
で、PAMを使ってるっぽいので、
$ vi /etc/pam_smb.conf
して、ワークグループを箇条書きする。
// /usr/local/samba/sbin、/usr/local/samba/bin
// をPATHに追加する。
// 設定の確認
$ testparm
// smbpasswdする
# smbpasswd -a USER
# smbpasswd USER
// Samba、SWATの起動スクリプトを用意する。
# vi /etc/init.d/smb
--以下、起動スクリプト
#!/bin/sh
#
# chkconfig: 345 91 35
# description: Starts and stops the Samba smbd and nmbd daemons
# used to provide SMB network services.
# Source function library.
. /etc/rc.d/init.d/functions
# Source networking configuration.
. /etc/sysconfig/network
# Check that networking is up.
[ ${NETWORKING} = "no" ] && exit 0
# Check that smb.conf exists.
[ -f /etc/samba/smb.conf ] || exit 0
# See how we were called.
case "$1" in
start)
echo -n "Starting SMB services: "
daemon smbd -D
daemon nmbd -D
echo
touch /var/lock/subsys/smb
;;
stop)
echo -n "Shutting down SMB services: "
killproc smbd
killproc nmbd
rm -f /var/lock/subsys/smb
echo ""
;;
status)
status smbd
status nmbd
;;
restart)
echo -n "Restarting SMB services: "
$0 stop
$0 start
echo "done."
;;
*)
echo "Usage: smb {start|stop|restart|status}"
exit 1
esac
--ここまで
実行権を与えて、chkconfig
# chmod +x /etc/init.d/smb
# chkconfig smb on
// SWATの起動のために
# vi /etc/xinet.d/swat
--ここから
# default: off
# description: SWAT (Samba Web Administration Tool)
# securlevel: 10
service swat
{
port = 901
socket_type = stream
wait = no
user = root
server = /usr/local/samba/sbin/swat
log_on_failure += USERID
disable = no
}
--ここまで
xinetdを再起動
# /etc/init.d/xinetd restart
// SWATを開いてみる
http://[sambaをインストールしたホスト名 Or IPアドレス]:901/
にアクセスする
認証画面が出れば、ユーザ名・パスワードを入力し、
SWATが動いていることを確認する。
Windowsマシンでマイ ネットワークを開き、
Sambaによる共有フォルダがあればOK。
SWATが起動しないところでつまづいたけれど、
どうやって解決したか忘れちゃった…
// 追記
思い出した。
起動スクリプトのswatへのパスが間違ってたのだ。
/usr/local/samba/sbin/swat
が正しいパス。
この辺も確認したほうがよろしいです。
ソースを保存するパス = /usr/local/src
// libiconvのパッチ当て・インストール
$ wget ftp://ftp.ring.gr.jp/pub/GNU/libiconv/libiconv-1.8.tar.gz
$ wget http://www2d.biglobe.ne.jp/~msyk/software/libiconv-patch.html/libiconv-1.8-cp932-patch.diff.gz
$ tar zxvf libiconf-1.8.tar.gz
$ zcat libiconv-1.8-cp932-patch.diff.gz | patch -p0
$ cd libiconv-1.8
$ ./configure
$ make
$ su
# make install
// Samba3.0のインストール
$ wget ftp://ftp.samba.gr.jp/pub/samba/samba-3.0.4.tar.gz
$ tar zxvf samba-3.0.4.tar.gz
$ cd samba-3.0.4/source
$ LDFLAGS=-Wl,-rpath,/usr/local/lib ./configure --with-libiconv=
/usr/local/lib
$ make CFLAGS="-O2 -I/usr/kerberos/include"
$ su
# make install
// Samba3.0の設定
smb.confが無いよ!となったので、
$ cp /usr/local/src/samba/samba-3.0.4/examples/smb.conf.default
/usr/local/samba/lib/smb.conf
で、smb.confを編集
$ vi /usr/local/samba/lib/smb.conf
[global]に
dos charset = CP932
unix charset = EUCJP-MS
display charset = EUCJP-MS
を追加、
workgroupの項目をWindowsのワークグループと一致させる。
で、PAMを使ってるっぽいので、
$ vi /etc/pam_smb.conf
して、ワークグループを箇条書きする。
// /usr/local/samba/sbin、/usr/local/samba/bin
// をPATHに追加する。
// 設定の確認
$ testparm
// smbpasswdする
# smbpasswd -a USER
# smbpasswd USER
// Samba、SWATの起動スクリプトを用意する。
# vi /etc/init.d/smb
--以下、起動スクリプト
#!/bin/sh
#
# chkconfig: 345 91 35
# description: Starts and stops the Samba smbd and nmbd daemons
# used to provide SMB network services.
# Source function library.
. /etc/rc.d/init.d/functions
# Source networking configuration.
. /etc/sysconfig/network
# Check that networking is up.
[ ${NETWORKING} = "no" ] && exit 0
# Check that smb.conf exists.
[ -f /etc/samba/smb.conf ] || exit 0
# See how we were called.
case "$1" in
start)
echo -n "Starting SMB services: "
daemon smbd -D
daemon nmbd -D
echo
touch /var/lock/subsys/smb
;;
stop)
echo -n "Shutting down SMB services: "
killproc smbd
killproc nmbd
rm -f /var/lock/subsys/smb
echo ""
;;
status)
status smbd
status nmbd
;;
restart)
echo -n "Restarting SMB services: "
$0 stop
$0 start
echo "done."
;;
*)
echo "Usage: smb {start|stop|restart|status}"
exit 1
esac
--ここまで
実行権を与えて、chkconfig
# chmod +x /etc/init.d/smb
# chkconfig smb on
// SWATの起動のために
# vi /etc/xinet.d/swat
--ここから
# default: off
# description: SWAT (Samba Web Administration Tool)
# securlevel: 10
service swat
{
port = 901
socket_type = stream
wait = no
user = root
server = /usr/local/samba/sbin/swat
log_on_failure += USERID
disable = no
}
--ここまで
xinetdを再起動
# /etc/init.d/xinetd restart
// SWATを開いてみる
http://[sambaをインストールしたホスト名 Or IPアドレス]:901/
にアクセスする
認証画面が出れば、ユーザ名・パスワードを入力し、
SWATが動いていることを確認する。
Windowsマシンでマイ ネットワークを開き、
Sambaによる共有フォルダがあればOK。
SWATが起動しないところでつまづいたけれど、
どうやって解決したか忘れちゃった…
// 追記
思い出した。
起動スクリプトのswatへのパスが間違ってたのだ。
/usr/local/samba/sbin/swat
が正しいパス。
この辺も確認したほうがよろしいです。