当前位置: 首页 > 图文教程 > 服务器 > Linux服务器 > RedHatLinux网络服务器构架实务(六)

Linux服务器
linux下用cron定时执行任务的方法
.htaccess绑定域名到子目录的方法
linux apache下虚拟主机配置方法
apache 局域网访问配置方案
linux Apache服务器系统安全设置与优化
linux中mac地址绑定方法
linux托盘不断闪烁之解决方法
Apache配置 虚拟转向实例
Apache No space left on device的解决办法
Apache rewrite的重写相关的参数说明
LINUX入门级常用命令20条整理
Ubuntu设置开机自动挂载所有格式硬盘分区
5个可能被你忽略的Linux安全设置方法
学习Apache的mod rewrite、access写法
改版时保留原链接,创建新的URL的方法
rsync中文手册之使用rsync实现网站镜像和备份linux
rsync 数据同步使用详解
linux URL的301重定向代码分析
eclipse3.2.2 + MyEclipse5.5 + Tomcat5.5.27 配置数据库连接池
Apache服务器二级域名的完美实现

Linux服务器 中的 RedHatLinux网络服务器构架实务(六)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-18   浏览: 71 ::
收藏到网摘: n/a


4测试Resin
##启动Resin
shell>resinstart
##重新启动Apache,因为刚才修改了httpd.conf,需要重启才生效
shell>apacherestart
#创建文件
touch/home/www/index.jsp
chown-Rwww/home/www/index.jsp
chmod701/home/www/index.jsp
##编辑源文件
vi/home/www/index.jsp
##源代码只有一句:
1+1=<%=1+1%>
##测试该程序
lynxhttp://www.yesgo.loc/
##输出结果应该是:1+1=2

5创建启动脚本
##创建Resin服务,道理跟创建MySQL和Apache服务是一样的,不过这里要设置相关环境变量。
##创建脚本文件
touch/etc/rc.d/init.d/resin
##更改文件权限
chmod701/etc/rc.d/init.d/resin
##连接到相关启动级别
ln-s/etc/rc.d/init.d/resin/etc/rc.d/rc5.d/S70resin
##编辑启动脚本
vi/etc/rc.d/init.d/resin

##文件内容如下:

#!/bin/bash
#Setenvironmentparameter:

JAVA_HOME=/usr/local/jvm

RESIN_HOME=/usr/local/resin

CLASS_HOME=/usr/local/lib/java

CLASSPATH=$CLASSPATH:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/jre/lib:$RESIN_HOME/lib:$CLASS_HOME/drivers/mm.mysql-2.0.4-bin.jar.zip:$CLASS_HOME/jaf/activation.jar:$CLASS_HOME/javamail/mail.jar:$CLASS_HOME/javamail/smtp.jar:$CLASS_HOME/javamail/pop3.jar:$CLASS_HOME/javamail/mailapi.jar:$CLASS_HOME/javamail/imap.jar

PATH=$PATH:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local:/usr/local/bin:/usr/local/jvm/bin:/usr/local/jvm/jre/bin:/usr/local/mysql/bin:/usr/bin/X11:/usr/X11R6/bin

exportJAVA_HOMERESIN_HOMECLASS_HOMECLASSPATHPATH

#Startresinwebserver
exec/usr/local/resin/httpd.shstart

Step15PhpMyAdmininstall

##phpMyAdmin是我最喜欢的MySQL客户端工具。我也使用过其他的客户端,包括win32的DBTools、mysqlfront等和基于web的其他工具,然而,我最后发现phpMyAdmin仍然是不可替代的。它基于web的通用性、免安装、多用户、平台无关性、稳定性、开放源码和极快的升级速度实在是太好了。况且本文档主要探讨的是服务器的配置,所以,我这里仍然只介绍phpMyAdmin。

1配置DNS
vi/var/named/yesgo.loc
#追加如下一行,当然你可以自定义其他别名或主机名
mysqlINCNAMEns.yesgo.loc.

/etc/rc.d/init.d/namedrestart//重启DNS服务
nslookup //测试是否解析成功

2建立FTP
##在安装MySQL的时候,我们已经建立了一个叫做mysql的帐号,如果你还没有建立,可以按照下面的语句建立:
useraddmysq-s/dev/null-gftpchroot
passwdmysql

3安装phpMyAdmin
tarxvzf/home/src/phpMy*
cp/home/src/phpMyAdmin/*/home/mysql
chown-Rmysql/home/mysql
chown-Rmysql/home/mysql/*
chmod701/home/mysql
chmod701/home/mysql/*

4添加虚拟主机
vi/usr/local/apache/conf/httpd.conf

<VirtualHostmysql.yesgo.loc>
 [email protected]
 DocumentRoot/home/mysql
 ServerNamemysql.yesgo.loc
 ErrorLoglogs/mysql.yesgo.loc-error_log
 CustomLoglogs/mysql.yesgo.loc-access_logcommon
 </VirtualHost>

5添加身份验证
##添加MySQL用户
##使用身份验证功能,phpMyAdmin需要一个启动用户,这个用户对mysql的相关表具有查询权限,具体定义如下:
shell>mysql-p
mysql>GRANTUSAGEONmysql.*TO'<stduser>'@'localhost'IDENTIFIEDBY'<stdpass>';
mysql>GRANTSELECT(Host,User,Select_priv,Insert_priv,Update_priv,Delete_priv,Create_priv,Drop_priv,Reload_priv,Shutdown_priv,Process_priv,File_priv,Grant_priv,References_priv,Index_priv,Alter_priv)ONmysql.userTO'<stduser>'@'localhost';
mysql>GRANTSELECTONmysql.dbTO'<stduser>'@'localhost';
mysql>GRANTSELECT(Host,Db,User,Table_name,Table_priv,Column_priv)ONmysql.tables_privTO'<stduser>'@'localhost';
viconfig.inc.php

$cfgServers[1]['host'] ='localhost'; //主机名
$cfgServers[1]['port'] ='3306';//默认端口
$cfgServers[1]['socket']='';//使用的socket路径
$cfgServers[1]['connect_type']='tcp';//使用tcp还是socket方式来连接
$cfgServers[1]['stduser'] =''; //标准用户帐号名称
$cfgServers[1]['stdpass'] =''; //标准帐号的密码
$cfgServers[1]['auth_type']='http';//指定验证方式为config,http还是cookie,这是2.2.3版本的一个变化,比较安全的方式是http验证
$cfgServers[1]['user']='root';//MySQL帐号
$cfgServers[1]['password']='';//只有使用config验证方式的时候才需要填写
$cfgServers[1]['only_db'] ='';//如果你在这里指定了一个数据库,那么登陆后系统只列出这个数据库在左侧

6测试phpMyAdmin
apacherestart
lynxhttp://mysql.yesgo.loc//建议使用客户端浏览器测试

Step16ServerTest

##为什么不使用1+1=<%=1+1%>或者<%out.print("HelloWorld!");%>这样的例子呢?因为这样的例子只能测试Apache和Resin是否能够协同工作,而不能测试数据库连接、JDBC2.0是否支持,中文问题是否存在等等。下面给出四个例子,第一个例子可以测试上述的所有问题;第二个例子告诉你如何使用Resin的连接池;第三个例子告诉你如何调用组件,如何实现数据层和处理层的分离;第四个例子用来测试PHP。

例一:使用连接串连接数据库

1创建数据库
##数据库脚本如下,可存储为.sql文件,然后利用phpMyAdmin生成数据库
##注意,后面的例子也将沿用该数据库。
createdatabaseyesgo
useyesgo;

createtableprov

prov_idtinyint(2)notnullprimarykey,
prov_namechar(6)notnull
);

insertintoprovvalues('01','安徽');
insertintoprovvalues('02','北京');
insertintoprovvalues('03','重庆');
insertintoprovvalues('04','福建');
insertintoprovvalues('05','甘肃');
insertintoprovvalues('06','广东');
insertintoprovvalues('07','广西');
insertintoprovvalues('08','贵州');
insertintoprovvalues('09','海南');
insertintoprovvalues('10','河北');
insertintoprovvalues('11','黑龙江');
insertintoprovvalues('12','河南');
insertintoprovvalues('13','湖北');
insertintoprovvalues('14','湖南');
insertintoprovvalues('15','内蒙古');
insertintoprovvalues('16','江苏');
insertintoprovvalues('17','江西');
insertintoprovvalues('18','吉林');
insertintoprovvalues('19','辽宁');
insertintoprovvalues('20','宁夏');
insertintoprovvalues('21','青海');
insertintoprovvalues('22','山西');
insertintoprovvalues('23','陕西');
insertintoprovvalues('24','山东');
insertintoprovvalues('25','上海');
insertintoprovvalues('26','四川');
insertintoprovvalues('27','天津');
insertintoprovvalues('28','西藏');
insertintoprovvalues('29','新疆');
insertintoprovvalues('30','云南');
insertintoprovvalues('31'