Archive for 28th 7月 2009

CentOSにPHPをインストール

PHPのインストールばかりなのですが、前回のようにWindowsにではなく、CentOSに入れます。

環境は

# cat /etc/redhat-release
CentOS release 5.3 (Final)
 
[]# httpd -v
Server version: Apache/2.2.3
Server built:   Jan 21 2009 22:01:41

です。phpはどうやらまだ入っていないようでした。
まずはyumでインストールしてみます。

# yum install -y php
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: rsync.atworks.co.jp
 * updates: rsync.atworks.co.jp
 * addons: rsync.atworks.co.jp
 * extras: rsync.atworks.co.jp
Setting up Install Process
Parsing package install arguments
Resolving Dependencies
--> Running transaction check
---> Package php.i386 0:5.1.6-23.2.el5_3 set to be updated
--> Processing Dependency: php-cli = 5.1.6-23.2.el5_3 for package: php
--> Processing Dependency: php-common = 5.1.6-23.2.el5_3 for package: php
--> Processing Dependency: libgmp.so.3 for package: php
--> Running transaction check
---> Package php-cli.i386 0:5.1.6-23.2.el5_3 set to be updated
---> Package php-common.i386 0:5.1.6-23.2.el5_3 set to be updated
---> Package gmp.i386 0:4.1.4-10.el5 set to be updated
--> Finished Dependency Resolution
 
Dependencies Resolved
 
======================================================================================================================================================
 Package                             Arch                          Version                                     Repository                        Size
======================================================================================================================================================
Installing:
 php                                 i386                          5.1.6-23.2.el5_3                            updates                          1.1 M
Installing for dependencies:
 gmp                                 i386                          4.1.4-10.el5                                base                             664 k
 php-cli                             i386                          5.1.6-23.2.el5_3                            updates                          2.1 M
 php-common                          i386                          5.1.6-23.2.el5_3                            updates                          151 k
 
Transaction Summary
======================================================================================================================================================
Install      4 Package(s)
Update       0 Package(s)
Remove       0 Package(s)
 
Total download size: 4.0 M
Downloading Packages:
(1/4): php-common-5.1.6-23.2.el5_3.i386.rpm                                                                                    | 151 kB     00:00
(2/4): gmp-4.1.4-10.el5.i386.rpm                                                                                               | 664 kB     00:00
(3/4): php-5.1.6-23.2.el5_3.i386.rpm                                                                                           | 1.1 MB     00:00
(4/4): php-cli-5.1.6-23.2.el5_3.i386.rpm                                                                                       | 2.1 MB     00:00
------------------------------------------------------------------------------------------------------------------------------------------------------
Total                                                                                                                 3.7 MB/s | 4.0 MB     00:01
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing     : php-common                                        [1/4]
  Installing     : gmp                                               [2/4]
  Installing     : php-cli                                           [3/4]
  Installing     : php                                               [4/4]
 
Installed: php.i386 0:5.1.6-23.2.el5_3
Dependency Installed: gmp.i386 0:4.1.4-10.el5 php-cli.i386 0:5.1.6-23.2.el5_3 php-common.i386 0:5.1.6-23.2.el5_3
Complete!

普通にyumだと、5.1.6-23.2.el5_3というバージョンが入ってしまうのですが、yumで最新(現時点でphp5.3.0)にするにはちょっと手間なのでこれで良いか。

そして、Apacheの設定をします。
yumでインストールすると、多分勝手にhttpd/conf.d/php.confというファイルが出来ているので特にいじる必要はないか?

そして、現在phpを入れようとしているサーバーにはGlassFishがDocumentRootで生きているので、これをまず別のエイリアスに切ります。とりあえず、gfというサブディレクトリにしようかな。
mod_proxy_ajpで動かしているので、以下のように修正。

        ProxyPass /gf/ ajp://localhost:18009/
        ProxyPassReverse /gf/ ajp://localhost:18009/

そしていつものphp動作確認用ファイルをDocumentoRootにおきます。

<?php
phpinfo();
?>


CentOSにMySQLをインストール

同じようなことばかり書いてる。
yumを使ってインストールするだけなので特にメモの必要はないかなと思いますが、PHP拡張モジュールの設定も必要なので備忘。

 yum install mysql php-mysql

これで現時点では以下バージョンが入りました。

# yum info mysql
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: rsync.atworks.co.jp
 * updates: rsync.atworks.co.jp
 * centosplus: rsync.atworks.co.jp
 * addons: rsync.atworks.co.jp
 * extras: rsync.atworks.co.jp
Installed Packages
Name       : mysql
Arch       : i386
Version    : 5.0.45
Release    : 7.el5
Size       : 7.3 M
Repo       : installed
Summary    : MySQL のクライアントプログラムと共有ライブラリ。
URL        : http://www.mysql.com
License    : GPLv2 with exceptions
Description: MySQL is a multi-user, multi-threaded SQL database server. MySQL is a client/server implementation consisting of a server daemon (mysqld)
           : and many different client programs and libraries. The base package contains the MySQL client programs, the client shared libraries, and
           : generic MySQL files.
# yum info php-mysql
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: rsync.atworks.co.jp
 * updates: rsync.atworks.co.jp
 * centosplus: rsync.atworks.co.jp
 * addons: rsync.atworks.co.jp
 * extras: rsync.atworks.co.jp
Installed Packages
Name       : php-mysql
Arch       : i386
Version    : 5.1.6
Release    : 23.2.el5_3
Size       : 175 k
Repo       : installed
Summary    : MySQL データベースを使用した PHP アプリケーション用のモジュール
URL        : http://www.php.net/
License    : The PHP License v3.01
Description: The php-mysql package contains a dynamic shared object that will add MySQL database support to PHP. MySQL is an object-relational
           : database management system. PHP is an HTML-embeddable scripting language. If you need MySQL support for PHP applications, you will need
           : to install this package and the php package.

php.iniにもMySQLモジュールが自動で設定されてるのかな?とphp.iniを確認しましたが、どうやらphp.iniは更新されているようでした。多分php-mysqlをインストールした場合は普通はphp.iniを確認すると思うのでこれは便利かな。Windowsではレジストリとか更新されてるとぜんぜん追えないし。

しかし、これだとサーバーが入っていないので、追加でmysql-serverを入れる必要があるのに気づきましたので入れます。

# yum install mysql-server

そしてMySQLの設定ファイル/etc/my.cnfに以下追記
(参照:データベースサーバー構築(MySQL)

default-character-set = utf8
 
[mysql]
default-character-set = utf8

そして起動します。

# /etc/rc.d//init.d/mysqld start

今日はこのくらいで。


osCommerceを触る

ショッピングカートの比較をしたいのですが、ググってもASPサイトばかりがヒットするしちょっと比較してみたいなと思うので有名どころのショッピングカートツールを入れて比較が出来ればしてみたいと思います。

まずは、osCommerceという結構古い歴史を持つソフトです。最終的には英語サイト向けのいいのを探したいですがとりあえず日本語版で感触をつかみます。

その前に、osCommerce用にディレクトリを作成してそこに展開することにします。

# mkdir osCommerce
# cd osCommerce/

ここにファイルを展開します。「catalog」と「admin」パッケージがあるようですが、osCommerce 2.2 MS1 日本語版には両方入っているようなのでそれを使います。

# wget http://keihanna.dl.sourceforge.jp/tep-j/3606/oscommerce-2.2ms1j-R8.tar.gz
--21:22:10--  http://keihanna.dl.sourceforge.jp/tep-j/3606/oscommerce-2.2ms1j-R8.tar.gz
keihanna.dl.sourceforge.jp をDNSに問いあわせています... 210.146.64.1
keihanna.dl.sourceforge.jp|210.146.64.1|:80 に接続しています... 接続しました。
HTTP による接続要求を送信しました、応答を待っています... 200 OK
長さ: 1056253 (1.0M) [application/x-gzip]
Saving to: `oscommerce-2.2ms1j-R8.tar.gz'
 
100%[=============================================================================================================&gt;] 1,056,253    112K/s   in 11s
 
21:22:21 (98.2 KB/s) - `oscommerce-2.2ms1j-R8.tar.gz' を保存しました [1056253/1056253]

これをそのまま解凍します。

tar -xvf oscommerce-2.2ms1j-R8.tar.gz

そしてhttp://[server]/osCommerce/oscommerce-2.2ms1j/admin/にアクセスすると、

FATAL ERROR: register_globals is disabled in php.ini, please enable it!

と出た。
PHPの基本設定である「register_globals」という設定をOnにしてということですが、デフォルトはセキュリティの懸念があるということでOffになっています。(参考:osCommerce 日本語版 (register_globals = Off 対応版)と Xrea.comサーバ
ですがまあOnにします。

そして、adminフォルダとcatalogフォルダの「include」フォルダ内にある「configure.php」に実行権限を与えます。

[root@blackhole oscommerce-2.2ms1j]# chmod 706 admin/includes/configure.php
[root@blackhole oscommerce-2.2ms1j]# chmod 706 catalog/includes/configure.php

そして、http://[server]/osCommerce/oscommerce-2.2ms1j/catalog/install/にアクセスすると設定画面が出ます。
osCommerce_begin

ここでMySQLが入っていなかったことに気づいたので続く。