masalibの日記

システム開発、運用と猫の写真ブログです

centos5.11でのWEBサーバー構築:(PHP編)

centos5.11でのWEBサーバー構築:(mysql編) - masalibの日記

の続きで
ソースからphpをインストールする部分です

4・phpのインストール

4−1・ソースのダウンロードと解凍
cd /usr/local/src/
wget http://jp1.php.net/distributions/php-5.3.21.tar.gz
tar zxvf php-5.3.21.tar.gz
#もしない場合は最新版をダウンロードする
4−2・コンパイル(configureとmake)
#シンボリックリンクをはる
ln -s /usr/local/mysql/lib /usr/local/mysql/lib64
ln -s /usr/local/freetds/lib /usr/local/freetds/lib64
ln -s /usr/lib64/libsybdb.so.5 /usr/lib64/libsybdb.so && ldconfig -v
|

# configureは長いですが
./configure   --with-libdir=lib64 --enable-mbstring --enable-mbregex --enable-soap --enable-zend-multibyte --libexecdir=/usr/lib64exec --with-mcrypt --with-curl --libdir=/usr/lib64 --with-libdir=lib64 --with-mysql=/usr/local/mysql/ --with-pdo-mysql=/usr/local/mysql/ --with-jpeg-dir=/usr/lib64 --with-png-dir=/usr/lib64 --with-zlib-dir=/usr/lib64 --with-mysqli=/usr/local/mysql/bin/mysql_config  --with-apxs2=/usr/local/apache2/bin/apxs  --with-config-file-path=/etc --with-config-file-scan-dir=/etc/php.d --with-mssql=/usr/local/freetds  --enable-zip

#freetds はSQLサーバーの接続がなければ削除しても問題なし
make 
make install
4−3−1・追加モジュールのインストール(gd)
cd /usr/local/src/php-5.3.21/ext/gd
phpize
aclocal
./configure --with-jpeg-dir=/usr/lib64
 make && make install
4−3−2・追加モジュールのインストール(oepnssl)
cd /usr/local/src/php-5.3.21/ext/openssl
cp config0.m4 config.m4
phpize
aclocal
./configure --with-jpeg-dir=/usr/lib64
 make && make install
4−3−3・追加モジュールのインストール(zlib)
cd /usr/local/src/php-5.3.21/ext/zlib
cp config0.m4 config.m4
phpize
aclocal
./configure --with-jpeg-dir=/usr/lib64
 make && make install
4−3−4・追加モジュールのインストール(PDO)
cd /usr/local/src/
wget http://pecl.php.net/get/PDO_DBLIB-1.0.tgz
tar xvzf PDO_DBLIB-1.0.tgz
cd PDO_DBLIB-1.0

#コンパイル
phpize
./configure --with-pdo-dblib=/usr/local/freetds
make
make install

vi /usr/local/freetds/etc/freetds.conf

#バージョンの部分をコメント解除する
#   ;tds version = 4.2
#   ↓
#   tds version = 4.2
4−4・設定変更
# 設定ファイルをコピーする
cp /usr/local/src/php-5.3.21/php.ini-development /etc/php.ini


下記を追加する

;;;;;;;;;;;;;;;;;;;;;;
; Dynamic Extensions ;拡張モジュールのブブン
;;;;;;;;;;;;;;;;;;;;;;

extension=pdo_dblib.so
extension=openssl.so
extension=memcached.so

;;;;;;;;;;;;;;;;;;;
; Module Settings ;
;;;;;;;;;;;;;;;;;;;

[Date]
;date.timezone =
date.timezone="Asia/Tokyo"
# apacheの設定を変更する
vi /usr/local/apache2/conf/httpd.conf

# パス変更
# LoadModule php5_module        /usr/local/apache2/modules/libphp5.so
# mime_moduleの設定変更(追加)
#    AddType application/x-httpd-php .php .phtml

# サーバーのリスタート(本来はコンフィグチェックをやるべき)
service httpd restart
4−5・動作確認
#php_infoを表示
vim /usr/local/apache2/htdocs/check_info.php

下記の内容をコピペする

<!--?php
 phpinfo();
?-->

wgetで確認する
wget http://localhost/check_info.php
vim check_info.php

#phpとmysqlの接続テスト
vim /usr/local/apache2/htdoc/index_mysql.php

下記の内容をコピペする

<!--?php

try{

	// localhost test 
	$pdo = new PDO("mysql:host=localhost;dbname=mysql", "root", "password12345678");

	$sql = "select 1";

	$row =  $pdo--->query($sql);

}catch( PDOException $e ){
	var_dump($e->getMessage());
	exit();
}
var_dump($row);
?>

wgetで確認する
wget http://localhost/index_mysql.php
vim index_mysql.php


4−5−1・追加モジュールのインストール(zlib)
# なぜか拡張のフォルダからインストールするとzip.soが認識しない
# その為、peclからインストールする 
pecl install zip

pearphpMyAdminSmarty

4−6・pearのインストール
pear install Log
pear install Mail
pear install HTTP_Request
pear install HTTP_Request2
pear install HTTP_OAuth-0.2.3
pear install pear_info
pear install --alldeps phpdocumentor
pear install --alldeps PHP_CodeSniffer

pear list
4−7・phpMyAdminのインストール

http://sourceforge.jp/frs/g_redir.php?m=jaist&f=%2Fphpmyadmin%2FphpMyAdmin%2F3.4.3.2%2FphpMyAdmin-3.4.3.2-all-languages.tar.gz
からソースをダウンロード

phpMyAdmin-3.4.3.2-all-languages.tar.gz → /usr/local/apache2/htdocs
tar zxvf  phpMyAdmin-3.4.3.2-all-languages.tar.gz
mv phpMyAdmin-3.4.3.2-all-languages phpMyAdmin_xxxxxxxxxxxxx
cd phpMyAdmin_xxxxxxxxxxxxx
mv  config.sample.inc.php config.inc.php
vim config.inc.php

# $cfg['blowfish_secret'] = 'xxxxxxxxxxxxx'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */

xxxxxxxxxxxxxは各自適切な文字に変更する

# .htaccessを配置してIP制限する
vi /usr/local/apache2/htdocs/phpMyAdmin_xxxxxxxxxxxxx/.htaccess


# xxxxxxxxxxxxxにしてもハッキングされる可能性が高いので
# かならずIP制限する
4−8・Smarty インストール

最新版をインストール
2015/02/09時点での最新

cd /usr/local/src
wget http://www.smarty.net/files/Smarty-3.1.21.zip
unzip Smarty-3.1.21.zip
mv Smarty-3.1.21/libs /usr/lib64/php/Smarty