FreeBSD/Apache2.0 の変更点


*''&size(15){MySQL + PHP + Apache2};'' [#ncd3272c]

[[dokuwiki.fl8.jp転載済み>http://dokuwiki.fl8.jp/doku.php/02_freebsd/02_www/apache_2.0]]

XoopsやPHP-STATS構築に必要なMySQL + PHP + Apache環境の構築~
ほとんどportsからインストールするんで、簡単にインストールできます。~
サーバパワーによっては2時間くらいコンパイルに時間がかかるかもしれません。~

+[[環境>#A]]~
+[[インストール(Apache2)>#B]]~
+[[インストール(MySQL)>#C]]~
+[[インストール(PHP)>#D]]~

**''環境&aname(A);'' [#t336efc5]
FreeBSD 5.4~
MySQL 4.0.26~
PHP 4.4.0~
Apache 2.0.54~
~

**''インストール(Apache2)''&aname(B); [#gecd51a9]
&color(red){後でインストールし直すのも大変なので先に[[SuEXEC>/FreeBSD/Apache+SuEXEC]]も一緒に入れておきました。};~
&color(Red){※SuEXECの動作には[[suidperl>FreeBSD/suidperl]]が必要です。}; 
 # cd /usr/ports/www/Apache20
 # make WITH_PROXY_MODULES=no \
 WITH_SUEXEC=yes SUEXEC_DOCROOT=/home \
 SUEXEC_LOGFILE=/var/log/apache/suexec.log \
 install
~
起動
 # apachectl start
 ブラウザからIP入力するなどして、確認してみる。
~
**''インストール(MySQL)''&aname(C); [#w26afe76]
portsからインストールするとユーザの追加もディレクトリの設定も自動で行ってくれます。
 # cd /usr/ports/databases/mysql40-server
 # make install WITH_APACHE2=yes WITH_CHARSET=ujis WITH_XCHARSET=all
 Apache2使用とcharsetをEUCでmakeしました。
~
自動起動の設定
 # vi /etc/rc.conf
 -----------------追加-----------------
 # MySQL
 mysql_enable="YES"
 -----------------追加-----------------
~
起動~
起動シェルも用意されているので、起動してみる。
 # /usr/local/etc/rc.d/mysql-server.sh start
 # ps auxw|grep mysql
 -------------------------------------
 root@vaio# ps auxw|grep mysql
 mysql    22676  0.0  0.3  1660  1064  p0- I     5:47PM  0:00.03 /bin/sh /usr/l
 ocal/bin/mysqld_safe --defaults-extra-file=/var/db/m
 mysql    22702  0.0  7.7 65468 24832  p0- S     5:47PM   0:10.96 /usr/local/l
 ibexec/mysqld --defaults-extra-file=/var/db/mysql/my.c
~
mysqlshowでデータベース名が表示できれば正常です。
 # mysqlshow
 -------------------------------------
 +-----------+
 | Databases |
 +-----------+
 | mysql     |
 | test      |
 +-----------+
~
rootのパスワード設定を行う。
 # mysqladmin -u root password 'パスワードを記述'
 # mysql -u root -p
 Enter password:パスワードを入力
 -------------------------------------
 Welcome to the MySQL monitor.  Commands end with ; or \g.
 Your MySQL connection id is 61 to server version: 4.0.26-log
 
 Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
 
 mysql>
~
MySQLでデータベース:ABC ユーザ:abc パスワード:123を作成してみる。~
 mysql -u root -p
 Enter password:パスワードを入力
 CREATE DATABASE ABC;
 GRANT ALL ON ABC. * TO abc@localhost IDENTIFIED BY "123";
 FLUSH PRIVILEGES;
~
**''インストール(PHP)''&aname(D); [#w7030213]
[[PHP本家>http://www.php.net/downloads.php]]よりダウンロードしてくる。~
 # tar zxvf php-4.4.0.tar.gz
 # cd php-4.4.0
 # ./configure --with-mysql=/usr/local \
 --with-pgsql=/usr/local/pgsql \
 --with-apxs2=/usr/local/sbin/apxs \
 --with-tsrm-pth --enable-mbstring \
 --with-gd --with-zlib \
 --with-freetype-dir=/usr/local \
 --with-gd --with-jpeg-dir=/usr/local \
 --with-png-dir=/usr/local \
 --enable-mbstr-enc-trans --enable-trans-sid \
 --enable-versioning
 # make
 # make install
&color(red){※--with-gd --with-jpeg-dir=/usr/localはOpnePNEの為に付けました。};

php.iniの編集~
 # vi /usr/local/lib/php.ini
 ------------------変更箇所--------------------
 register_globals Off
         ↓
 register_globals On
 ------------------変更箇所--------------------
~
httpd.confの編集~
 # vi /usr/local/etc/apache2/httpd.conf
 下記の2行を追加する。
 ------------------追加-------------------- 
 AddType application/x-httpd-php .php .phtml
 AddType application/x-httpd-php-source .phps
~
Apache再起動
 # apachectl restart
~
起動確認
ユーザディレクトリにでもファイル名index.phpとでもして~
下記の一行を記述しアップロードする。~
 <?php phpinfo();?>~
ブラウザからアクセスしてみて、バージョン情報などが表示できれば成功です。~