1.首先安装FreeBSD5.3,可以从http://freebsd.org获得ISO安装文件。
a.进入sysinstall进行安装配置。如果是新手可以直接选择“standard”步骤进行选择。在安装软件包的时候注意一并安装Ports和Linux_Base。否则后面安装JDK将很麻烦。其他可以先都选中(all)。
b.进行安装。
c.安装完成后配置。例如:网卡、网络服务、帐号、安全……
2.进行安装开发环境前的准备工作:
a.升级ports树,保证ports最新。5.3的ISO中Postgresql版本还只到7.4.6,升级后发现增加了postgresql80-server,但安装仍然要在postgresql-devel中进行。
#cd /usr/share/examples/cvsup
(编辑ports-supfile。#ee ports-supfile 把*default host = 这一行修改为*default host = cvsup.freebsd.org)
#cvsup -L 2 -g ports-supfile
b.调整内核参数。FreeBSD默认的共享内存和信号量和Postgresql 8.0要求的不一样。
#cd /usr/src/sys/i386/conf
#cp GENERIC pgsql
#cat >> pgsql
options SYSVSHM
options SHMMAXPGS=4096 //**共享内存的最大尺寸是由选项SHMMAXPGS(以页计)
options SHMSEG=256 //**每进程最大共享内存段数量
options SYSVSEM
options SEMMNI=256 //**信号灯标识符的最小数量
options SEMMNS=512 //**系统范围的最大信号灯数量
options SEMMNU=256
options SEMMAP=256 //**这两个参数与 "semaphore undo(信号灯恢复)"有关
^c (按下ctrl+c)
#config pgsql
Kernel build directory is ../compile/pgsql
Don't forget to do a “make depend”
#cd ../compile/pgsql
#make depend
#make
#make install
#reboot
3.安装postgresql8.0:
#cd /usr/ports/databades/postgresql-devel
#make install
#rehash
a.初始化数据库
#su -l pgsql -c initdb
b.启动数据库服务器
# su pgsql
# pg_ctl -D /usr/local/pgsql/data -l logfile
c.创建pgsql库
$createdb pgsql
d.测试
$pgsql
pgsql-# \l
//**显示所有数据库列表,和mysql的show databases功能等同;
默认连接pgsql库,如果前面不创建,这一步就会报错。
在pgsql-#的提示下,分两种命令格式,以"\"引导开头的是postgresql的管理命令,再一种就是SQL语句。
\? 显示第一种类型的帮助说明。
\h 显示SQL语言的语句列表
\h show 显示某条语句的说明和语法
\l 列所有数据库
\dt 显示当前数据库中表的信息,与mysql 中show table等同
\c <database name> 连接另外一库
\du 显示用户列表
\! 回到shell下执行操作,exit返回
\q 退出psql
4.安装Apache2:
#cd usr/ports/www/apache2/
#make install
#make clean
修改/etc/rc.conf:apache2_enable="YES"
5.安装JDK1.4:
#/usr/ports/java/jdk14
# make install
JDK的安装需要个人下载相关包,在这里ports会有提示下载网址。以下是笔者安装时候的提示:
http://www.eyesbeyond.com/freebsddom/java/jdk14.html
下载bsd-jdk14-patches-7.tar.gz
http://www.sun.com/software/communitysource/j2se/java2/download.xml
下载j2sdk-1_4_2-bin-scsl.zip
j2sdk-1_4_2-src-scsl.zip
下载 j2sdk-1_4_2_07-linux-i586.bin
下载的文件放在 /usr/ports/distfiles/
# kldload linprocfs
# mount -t linprocfs linprocfs /compat/linux/proc
(可以编辑/etc/fstab,使得该文件系统开机自动挂载,还要保证安装了zip包)
# make install
# make clean
时间很长!!!
修改 /etc/profile 添加
export JAVA_HOME="/usr/local/jdk1.4.2" (csh:setenv 变量 值)
export CATALINA_HOME="/usr/local/jakarta-tomcat5.0"
export CLASSPATH="$JAVA_HOME/lib"
6.安装Tomcat4.1:
#/usr/ports/www/jakarta-tomcat41/
# make install
# make clean
7.安装mod_jk
#/usr/ports/www/mod_jk/
# make install
# make clean
mod_jk2,从2004年11月15日开始,就失去了官方支持。mod_jk2中的很多內容已经port加进了mod_jk。因此使用mod_jk。
8.Apache+Tomcat
a.修改 /usr/local/etc/apache2/httpd.conf
LoadModule jk_module libexec/apache2/mod_jk.so # 去掉注释
添加虚拟主机 # 用192.168.0.68作虚拟主机
<VirtualHost *:80>
ServerAdmin xxxx@xxxx.com
DocumentRoot /www/192.168.0.68
ServerName 192.168.0.68
ErrorLog /var/log/192.168.0.68-error_log
CustomLog /var/log/192.168.0.68-access_log common
<Directory "/www/192.168.0.68">
Options Indexes FollowSymLinks
AllowOverride None
Order Deny,Allow
Allow from all
</Directory>
</VirtualHost>
b.Apache转向Tomcat处理JSP页面
*修改/usr/local/etc/apache2/mod_jk.conf
复制该文件到/usr/local/etc/apache2/Includes/mod_jk.conf
然后编辑:
将jsp-hostname修改成192.168.0.68
编辑Includes路径为workers.properties的路径(/usr/local/etc/apache2/Includes/)
*配置workers.properties
(复制/usr/ports/www/mod_jk/files/workers.properties.sample至/usr/local/etc/apache2/Includes/workers.properties)
workers.properties中的jsp_hostname修改成 192.168.0.68
#mkdir /usr/local/logs # mod_jk.conf 中的 logs 路径,不创建出错
c.Tomcat添加虚拟主机
修改 /usr/local/jakarta-tomcat41/conf/server.xml
</Host> 后面添加
<Host name="192.168.0.68" appBase="/www/192.168.0.68">
<Context path="" docBase="." />
<Logger className="org.apache.catalina.logger.FileLogger"
directory="logs" prefix="192.168.0.68_log." suffix=".txt"
timestamp="true" />
</Host>
创建目录/usr/local/jakarta-tomcat41/conf/Catalina/192.168.0.68
创建文件/usr/local/jakarta-tomcat41/conf/Catalina/192.168.0.68/ROOT.xml
ROOT.xml文件内容:
<Context path="/" docBase="/www/192.168.0.68"
debug="0" privileged="true">
<Logger className="org.apache.catalina.logger.FileLogger"
prefix="192.168.0.68_log." suffix=".txt"
timestamp="true"/>
</Context>
配置完成
tomcat50ctl restart
apachectl restart
在/www/192.168.0.68 创建一个 jsp 文件
http://192.168.0.68/index.jsp
<%
out.println("Hi...........FreeBSD");
%>