首页
登录 | 注册

配置支持MS SQL Server、MYSQL、JSP、PHP的WEB服务器

 

作为一名网络管理员,尤其是中学的网络管理员,工作难度是相当大的。中学的校园网络说起来不大,再豪华大部分也超不过1000信息点,设备连接数能达到50%也就不错了。麻雀虽小可是也五脏俱全:

²        中心交换机也是带三层模块的,二级交换、三级交换都也是可网管的;

²        每间教室都有计算机,教室内的计算机至少有几十个老师要使用;

²        每个老师都有自己的工作计算机,既要安全又要个性化;

²        有不止一个的计算机机房,既要允许学生上网,还要限制学生上网;

²        电子阅览室也是有的,既要开放又要管理;

²        专业的或者DIY的服务器也有几台;

²        有一个以上的网站;

²        还有教学教务管理平台;

²        有钱的话资源库也会有的;

²        视频点播站也是需要的,要不然电子阅览室就少了一道风景;

²        时不时在可能的情况下还得改一改不合适的软件代码;

²        ………

中学中的技术人员配置数量是极少的,以上这么多的重担全部就会押在三五个网管员身上,要求真高啊。

2006年因为要开发一些网络教学管理软件,想来想去还是决定把网络OS定为Linux,服务器为Apache,脚本语言为PHP,数据库为MS SQL Server(学校已有的系统全部运行在上面),花了四天时间才搞定了整个服务平台。

Apache服务器支持PHPJSPMYSQLMS SQL Server。俗话说:好脑子不如烂笔头,赶紧把整个过程写了下来,于是有了这篇文章。


第一章、涉及程序包

1、             Freetds

linux下,PHP不能够直接访问MS SQL Server,需要一个中间件才能够正确访问。这个中间件就是Freetds。这个软件能够使LinuxUnix连接MS SQL ServerSybase数据库。目前最新的版本是0.64,在本文中使用的是0.62.3版的源码包。

主页地址为:http://www.freetds.org

下载地址为:http://ibiblio.org/pub/Linux/ALPHA/freetds/old/0.62/freetds-0.62.3.tar.gz

2Apr

AprApache可移植运行库,产生于保障服务器代码的多平台性。Apr的任务计划是编写并且维持一个可以提供可预期的和一致的接口给特殊的平台。其主要的目标是提供API给软件开发者可以编码而且确信代码不管在哪一个平台上都可以运行。

Apache源码包中自带位于srclib/apr下,需要手动安装。

2、             Apr-util

Apache源码包中自带位于srclib/apr-util下,需要手动安装。

4Apache

最流行的HTTP服务器软件之一。快速、可靠、可通过简单的API扩展,PHP/Perl/Python解释器可被编译到服务器中,完全免费,完全源代码开放。最新版本为2.2.0,本文中使用的为2.2.0版本。

下载地址:.http://apache.justdn.org/httpd/httpd-2.2.0.tar.gz

5MySql

     MySql是一个多线程的,结构化查询语言(SQL)数据库服务器。SQL 在世界上是最流行的数据库语言。MySQL 的执行性能非常高,运行速度非常快,并非常容易使用。是一个非常棒的数据库。最高版本为:

6PHP

7JDK

8Tomcat


第二章、程序安装

1Freetds的安装

[root@red]# tar –zxvf freetds-0.62.3.tar.gz

[root@red]# cd freetds-0.62.3

[root@red]# ./configure \

>--prefix=/usr/local/freetds \     {指定freetds的安装目录为/usr/local/freetds}

>--with-tdsver=8.0 \            {指定freetds运行版本为8.0支持Ms SQL Server 2000}

>--enable-msdblib              {设定freetds支持Msdblib,好像可以不用}

[root@red]# make

[root@red]# make install

配置参看第三章Freetds配置。

2Apr的安装

[root@red]# tar –zxvf httpd-2.2.0.tar.gz

[root@red] # cd httpd-2.2.0

[root@red] # cd srclib

[root@red] # cd apr

[root@red] # ./configure –prefix=/usr/local/apr   {指定Apr的安装目录为/usr/local/apr}

[root@red] # make

[root@red] # make install

    不需要配置。

3Apr-util的安装

[root@red] # cd httpd-2.2.0

[root@red] # cd srclib

[root@red] # cd apr-util

[root@red] # ./configure \

>--prifix=/usr/local/apr-util \      {指定Apr的安装目录为/usr/local/apr-util}

>--with-apr=/usr/local/apr        {指定Apr的安装目录为/usr/local/apr}

[root@red] # make

[root@red] # make install

    不用配置

4Apache的安装

[root@red] # cd httpd-2.2.0

[root@red] # ./configure \

>--enable-so \      {指定Apr的安装目录为/usr/local/apr-util}

>--enable-ssl=share \      {指定Apr的安装目录为/usr/local/apr-util}

>--enable-rewrite=share \      {指定Apr的安装目录为/usr/local/apr-util}

>--enable-proxy=share \      {指定Apr的安装目录为/usr/local/apr-util}

>--enable-deflate=shate \      {指定Apr的安装目录为/usr/local/apr-util}

>--enable-dav=share \      {指定Apr的安装目录为/usr/local/apr-util}

>--enable-track-vars \      {指定Apr的安装目录为/usr/local/apr-util}

>--enable-proxy-ajp=share 

>--prifix=/usr/local/apache2 \      {指定Apr的安装目录为/usr/local/apr-util}

>--with-mpm=worker \

>--with-apr=/usr/local/apr \

>--with-arp-util=/usr/local/apr-util \

[root@red] # make

[root@red] # make install

[root@red] # /usr/local/apache2/bin/apachectl start

在浏览器中地址中输入http://youIP/ 如果看到It works! 证明Apache安装成功。

[root@red] # /usr/local/apache2/bin/apachectl stop

5MySql的安装

[root@red] # useradd mysql –s /sbin/nologin  {可以不需要}

[root@red] # tar –zxvf mysql-4.1.18.tar.gz

[root@red] # cd mysql-4.1.18

[root@red] # ./configure \

>--with-prifix=/usr/local/mysql \

>--with-charset=GB2312 \     {如果使用UTF-8字符集,就可以不需要,建议不使用}

>--with-extra-charset=all \    {同上}

>--with-mysqld-user=mysql \   {可以不需要}

[root@red] # make

[root@red] # make install

[root@red] # cd /usr/local/mysql/share/mysql

[root@red] # cp my-medium.cnf /etc/my.cnf

[root@red] # cd /usr/local/mysql

[root@red] # ./mysql_install_db –user=mysql

[root@red] # chmod 1777 –R var

[root@red] # cd bin

[root@red] # mysqladmin –u root password 123456

[root@red] # cd /usr/local/mysql/share/mysql

[root@red] # ./mysql.server start

注:如果在安装之前创建了mysql用户,需要修改/usr/local/mysql目录的属性,因为英文的Mysql默认使用mysql用户启动服务,因此在启动服务之前必须修改:chomod –R mysql.mysql /usr/local/mysql

使用mysql –u root –p进入mysql运行命令:

grant select,insert,update,delete on 数据库.* to 用户◎localhost identified by “密码

6Php的安装

[root@red] # tar –zxvf php-4.4.2.tar.gz

[root@red] # cd php-4.4.2

[root@red] # ./configure \

>--prefix=/usr/local/php \

>--with-mysql=/usr/local/mysql \

>--with-mssql=/usr/local/freetds \

>--with-apxs2=/usr/local/apache2/bin/apxs \

>--with-config-file-path=/usr/local/php/etc \

>--enable-track-vars \

>--enable-force-cgi-redirect \

>--with-mhash      {支持哈希算法,诸如MD5}

[root@red] # make

[root@red] # make install

[root@red] # cp php.ini-dist /usr/local/php/etc/php.ini

7JDK的安装

[root@red] # chmod +X jdk1_5_06-linux-i586.bin

[root@red] # ./jdk1_5_06-linux-i586.bin

[root@red] # mv jdk1_5_06 /usr/java/jdk1_5_06

利用rpm –qa|grep ***命令查找以下程序包,如果安装,请使用rpm –e ***命令删除。{***为程序包名称}

gcc-java-*     {*代表版本号}

libgcj-devel*

redhat-lsb*

gettext-*

libgcj*

8Tomcat的安装

[root@red] # tar –zxvf apache-taomcat-5.5.16.tar.gz

[root@red] # mv apache-tmcat-5.5.16 /uar/local/tomcat


第三章、系统配置

1Freetds配置

[root@red] # cd /usr/local/freetds/etc

[root@red] # vi freetds.conf

;[myServer2K]

;   host = ntmachin.domain.com

;   port = 1433

;   tds Version = 8.0

去掉分号改为

[192.168.1.9]

host = 192.168.1.9     {192.168.1.9MS SQL Server数据库的IP地址,当然域名也可以}

port = 1433

tds Version = 8.0

client charset = UTF-8  {因为freetds不支持GB2312字符集,要想正确显示中文只能使用UTF-8字符集。}

2Apache配置

[root@red] # cd /usr/local/apache2/conf

[root@red] # vi httpd.conf

找到“LoadModule php4_module  modules/libphp4.so”一行,在下面添加

AddDefaultCharset UTF-8  

(因为freetds不支持GB2312字符集,要想正确显示中文只能使用UTF-8字符集。)

(如果没有找到这一行请检查/usr/local/apache2/modules下是否有libphp4.so文件,如果有请手动添加,如果没有请重新编译安装PHP。)

找到“”项,在“AddType application/x-gzip .gz .tgz”一行下面添加:“AddType application/x-httpd-php .php”。

找到“# Virtual hosts”下面的“#Include conf/extra/httpd-vhosts.conf“去掉前面的#

保存httpd.conf

//如果要想PHP能够正确访问MySql数据库还需要修改一项:

[root@red] # cd extra

[root@red] # vi httpd-vhosts.conf

删除里面的两段…….. 删除,添加:

       {这里的192.168.1.11是服务器的IP地址,当然你也可以使用*}

             {设定JSP服务器的根目录和默认首页}

       DirectoryIndex index.jsp

  

   ProxyPass / ajp://localhost:8009/

   ProxyPassReverse / ajp://localhost:8009/

   ServerAdmin root@manager.sxdxfz.cn    {设定服务器管理员}

   ServerName  manager.sxdxfz.cn         {服务器名称,也可是IP地址}

   ServerAlias www

   ErrorLog logs/manager.sxdxfz.cn-error_log

   CustomLog logs/manager.sxdxfz.cn-access_log common

3PHP配置

[root@red] # cd /usr/local/php/etc

[root@red] # vi php.in

找到“;default_charset = "iso-8859-1"”一行,去掉分号改为default_charset = "UTF-8",保存退出。

(因为freetds不支持GB2312字符集,要想正确显示中文只能使用UTF-8字符集。)

4./bash_profile配置

[root@red] # cd

[root@red] # ls –l

[root@red] # vi .bash_profile

把其改为

JAVA_HOME=/usr/java/jdk1.5.0_06  {设置JDK的默认目录}

CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar   {设置Java类的默认目录}

PATH=$PATH:$HOME/bin:$JAVA_HOME/bin:$JAVA_HOME/jre/bin  {设置默认S搜索路径}

BASH_ENV=$HOME/.bashrc

TOMCAT_HOME=/usr/local/tomcat    {设置Tomcat的默认路径}

USERNAME="root"

 

export USERNAME BASH_ENV PATH JAVA_HOME CLASSPATH TOMCAT_HOME

保存退出,使环境变量起作用

[root@red] # source ~/.bash_profile

5Tomcat配置

[root@red] # cd /usr/local/tomcat/conf

[root@red] # vi web.xml

添加  

            javaEncoding

            GB18030

       

1上方。

6、配置计算机启动项

[root@red] # cd /etc/rc.d

[root@red] # vi rc.local

添加以下项目:

/usr/local/tomcat/bin/startup.sh

/usr/local/apache2/bin/apachectl start

/usr/local/mysql/bin/mysqld_safe –user=mysql &


第四章、系统运行测试

1Freetds运行测试

freetds安装配置完成后,运行/usr/local/freetds/bin/tsql –S 192.168.1.9 –U sa 后显示:

locale is "zh_CN.GB2312"

locale charset is "GB2312"

Password:

输入密码后显示

1>

哈,你已经连接上MS SQL Server数据库了。

2MySql运行测试

[root@red] # cd /usr/local/mysql/share/mysql/mysql.server start

显示Starting MySQL. SUCCESS! 安装成功

3Apache运行测试

[root@red] # cd /usr/local/apache/bin/apachectl start

如果没有提示任何错误,应该是正常运行了。如果你还没有配置完PHP,在浏览器的地址栏里输入http://服务器IP地址,会显示It’s Works!。如果你配置了PHP,输入http://服务器IP地址/测试php文件名称,就应该会显示你所希望看到的内容。

4PHP运行测试

启动Apache,编写一个文件test.php,内容为,传到Apache的文档目录下,在浏览器的地址栏里输入http://服务器IP/test.php.

    这时你应该能够看到ApachePHP的配置信息,同时你还能看到PHP支持mssql的信息,显示如下:

5JDK运行测试

[root@red] # java   {不出错误即可}

6Tomcat运行测试

 

阅读(1236) | 评论(2) | 转发(0) |
0

上一篇:Fedora 8 离线安装DRBL无盘系统

下一篇:如何将一个程序作为服务项自动启动


相关文章

  • Oracle数据库 测试平台 - Database 11gR2/12cR2 --数据字典表级信息 SELECT USER,T.TABLE_NAME,TC.COMMENTS,DECODE(C.CONSTRAINT_NAME,NULL,'N', ...
  • 深入浅出SQL Server Replication第一篇:走近Replication(上)
    深入浅出SQL Server Replication第一篇:走近Replication(上) 对于很多的SQL Server DBA而言,Replication不是什么新鲜的事物了,也是大家常常说的"复制",很多的朋友已 ...
  • 目录 l 摘要l 一般安装程序的制作l 在安装程序中部署SQL Server数据库1. 通过调用osql来执行数据库脚本文件2. 通过把脚本文件作为资源文件载入3. 通过sp_attach_db来创建数据库l 总结 摘要一个项目完成之后,安 ...
  • SQL Server横向扩展方案-可伸缩的共享数据库
    在上篇文章中,我们讲述了SQL Server横向扩展(或者称之为"水平扩展")方案中的两种:SODA和P2P技术,本篇文章将会继续的介绍余下的方案. Scalable Shared Database(SSD,可伸缩的共享 ...
  • SQL Server横向扩展方案-P2P
    在上一篇文章中,介绍了SODA的相关的内容,我们本篇接着没有完成的话题继续. Peer-to-Peer Transactional Replication 翻译为中文就是"点到点的事务复制",简称P2P.P2P的技术在S ...
  • SQL Server 2008 R2 Express简易安装记录:
                                              SQL Server 2008 R2 Express簡易安裝紀錄 最近因為專案需要而安裝了SQL Server 2008 R2 Express,以下是安裝記 ...

2020 unjeep.com webmaster#unjeep.com
12 q. 0.016 s.
京ICP备10005923号