カテゴリー
SugiBlog Webエンジニアのためのお役立ちTips

PHPインストール

PHPのインストール時に使用できるシェルスクリプトです。
Apache1.X系とApache2.x系の2種類作成したもののご紹介です。

#!/bin/sh

#=======================================
# php configure script
# php version 5
# for apache version 1
#=======================================

ARGV=$@

if [ -e $ARGV ] ; then

	echo "Please enter the option!"
	echo "[Options]:"
	echo "test - 設定されているコンフィグオプションを表示します。"
	echo "exec - php5をビルドします。"

elif [ "$ARGV" = "test" ] ; then

	echo "./configure \\"
	echo "--with-apxs=/usr/local/apache/bin/apxs \\"
	echo "--enable-mbstring \\"
	echo "--enable-mbstr-enc-trans \\"
	echo "--enable-mbregex \\"
	echo "--enable-trans-sid \\"
	echo "--with-mysql=/usr/bin \\"
	echo "--with-config-file-path=/usr/local/lib"

elif [ "$ARGV" = "exec" ] ; then

	./configure \
	--with-apxs=/usr/local/apache/bin/apxs \
	--enable-mbstring \
	--enable-mbstr-enc-trans \
	--enable-mbregex \
	--enable-trans-sid \
	--with-mysql=/usr/bin \
	--with-config-file-path=/usr/local/lib

	ERROR=$?
	if [ "$ERROR" = "0" ] ; then
		echo "ビルドが終了しました。"
	fi

else

	echo "error: unknown option!"
	echo "[Options]:"
	echo "test - 設定されているコンフィグオプションを表示します。"
	echo "exec - php5をビルドします。"

fi

続きを読む…»

2,593 views

apache インストール

コンフィグ用シェルスクリプトを用意
apache.configure

#!/bin/sh
./configure \
--enable-module=so \
--enable-mods-shared=most \
--enable-ssl \
--with-ssl=/usr/share/ssl \
--enable-vhost-alias
apache.configure

make
make install

make clean
make distclean

確か1でも2でもいけるはず…

アップグレードでの再インストールの場合、設定ファイル・ドキュメントファイルは上書きされませんが、
ドキュメントルートのindex.htmlやapacheアイコンなどは上書きされます。

1,778 views

apache_note [PHP]

Apacheのログに好きな情報を出力させる。

例)

$val = "hogehoge";
apache_note("originallog", $val);

Apache httpd.confにログフォーマット設定
LogFormat "%h %l %u %t \"%r\" %>s %b %{originallog}n" common

出力結果
192.168.212.51 - - [20/Jul/2005:21:39:03 +0900] "GET /index.php HTTP/1.1" 200 735 hogehoge
1,711 views

.htaccessでキャリア振り分け

ApacheのRewrite Moduleを使用します。
Apacheに該当のモジュールが組み込まれていることを前提にしています。
組み込まれていない場合は、Apacheを再度ビルドしなければならないので、それはまた別の機会に。

モジュールが組み込まれているか確認するには、httpd.confに以下の記述があればOK。

LoadModule rewrite_module modules/mod_rewrite.so

例)ドキュメントルートに来たアクセスで携帯キャリアだった場合、モバイル用のディレクトリへリダイレクトさせる

RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} ^(DoCoMo|KDDI|DDIPOKET|UP.Browser|J-PHONE|Vodafone|SoftBank)
RewriteRule ^$ /m/ [R]

※但し、SEO的にはよくないようだ。

1,579 views

デフォルトの文字コード

複数の文字コードでWEBページを作成する場合、デフォルトの文字コード設定をオフにしておかないとエラーが出る。 

●設定が記述されているファイル
… apache2/conf/extra/httpd-languages.conf

●変更箇所
AddDefaultCharset on|off|charset

4,092 views