免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 4894 | 回复: 0
打印 上一主题 下一主题

[Web] 在Linux上搭建WEB服务器:虚拟主机、SSL、管理 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2005-08-16 12:42 |只看该作者 |倒序浏览
本文相关资料:http://Linuxaid.com.cn
作者:蓝风



在本文的下篇这一部分里,我们将进一步探讨Apache服务器的配置使用——实际上IBM HTTP Server也只是对Apache服务器改良而成,所以基本的配置使用也是一致的。

    六、虚拟主机的设置

    Apache支持两种类型的虚拟主机,基于IP地址的虚拟主机和基于名称的虚拟主机。不管是选择哪种类型的虚拟主机,先决条件是要配置正确的域名服务(DNS)。基于IP的虚拟主机配置要求每个虚拟主机都有唯一的IP地址;而基于名称的虚拟主机使用CNAME记录建立(在顶级域名一样的情况下)或者另外一个域名服务中的A记录(在顶级域名不一样的情况下)。
    可以以两种方式配置Apache,以便支持多主机(主服务器和虚拟服务器):
    · 运行多个守护进程,每个主机具有一个单独的httpd守护进程。
    · 运行单个守护进程支持所有的虚拟主机和主服务器主机。
    第二种方法被广泛的采用,并在大多数情况下是首选方案。因此,本节只讨论这一种方法。

    Apache在httpd.conf文件中使用特殊的容器<VirtualHost>;来处理所有与虚拟主机有关的设置。一个最小的虚拟主机设置可能如下所示:
<VirtualHost 192.168.0.12>;
    DocumentRoot /home/httpd/www.company1.com
    ServerName www.company1.com
</VirtualHost>;
   <VirtualHost>;中的指令条目将重载或者补充(由命令本身的性质而定)主服务器中给定的设置,并只适应该虚拟主机。主服务器可以不提供任何WWW服务,所有的服务请求都由虚拟主机来处理。当然,你还可以设定你侦听的IP地址的端口,格式为:
<VirtualHost 192.168.0.12:9000>;

    设置实现基于IP地址的虚拟主机服务
    ◆实现前提
    这种方式需要在系统中设置IP别名,也就是在一台机器的网卡上绑定多个IP地址去为多个虚拟主机服务。而且要使用这项功能还要确定在你的LINUX内核中必须支持IP别名的设置,否则你还必须重新编译内核。
    ◆配置步骤
    假设,我们用来实现虚拟主机服务的机器,首先已经为自己提供了WEB服务,现在将为另一个域名www.xxx.com提供虚拟主机服务。
    规划IP地址:为虚拟主机申请新的IP地址。(假设本机IP地址为211.100.6.48),我们为新的虚拟主机申请的IP地址为211.100.6.49。
    ◆让ISP作好相应的域名解析工作。
    ◆为网卡设置IP别名:
    /sbin/ifconfig eth0:0 211.100.6.49 netmask 255.255.255.0
    ◆重新设置“/etc/httpd/conf/httpd.conf”,在文件中加入:
<VirtualHost 211.100.6.49>;
    ServerAdmin webmaster@xxx.com
    DocumentRoot /home/httpd/xxxroot
    ServerName www.xxx.com
    ErrorLog /var/log/httpd/xxxroot/error.log
</VirtualHost>;
    ◆建立相应的文档发布目录。(注意,如果需要的话,可能有修改目录和文件属性的操作,以便提供ftp权限和log文件能被服务器写入出错信息)
    mkdir /home/httpd/xxxroot
    touch /var/log/httpd/xxxroot/error.log
    ◆将相应的主页内容存放在相应的目录中即可。

    这种方式,每增加一个虚拟主机,就必须增加一个IP地址。而由于IP地址空间已经十分紧张,所以通常情况下是无法取得这么多的IP地址的。从某种意义上说,这也是一种IP地址浪费。同时,你也需要为新的IP地址付费,提高了WEB服务的成本,所以这种方式已经极少采用了。

    设置实现基于名字的虚拟主机服务
    设置基于名字的虚拟主机服务同样非常的简单。它不需要更多的IP地址,无须什么特殊的软硬件支持。现代的浏览器大都支持这种虚拟主机的实现方法。当然,这也就是指一些早期的客户端浏览器也许不支持这种虚拟主机的实现方法。
    配置基于名字的虚拟主机服务需要修改配置文件:“/etc/httpd/conf/httpd.conf”,在这个配置文件中增加以下内容:

NameVirtualHost 211.100.6.48
<VirtualHost 211.100.6.48>;
    DocumentRoot /home/httpd/xxxroot
    ServerName www.xxx.com
</VirtualHost>;

<VirtualHost 211.100.6.48>;
    DocumentRoot /home/httpd/yyyroot
    ServerName www.yyy.com
</VirtualHost>;

    也就是在基于IP地址的配置基础上增加一句:NameVirtualHost 211.100.6.48而已。在本例中,为了体现只需要增加一次,所以特别地设置了两个虚拟主机服务。
    最后也是建立相应的目录,将主页内容放到相应的目录中去就可以了。
    在确认已经建立需要的所有目录和文件后,你还需要重启Apache服务器使设置生效。

    七、使用SSL构建安全的WEB服务器

    Web上的电子商务正在以超乎想象的速度发展。许多公司正在建立电子商务WEB站点,以便在internet上开展业务。电子商务站点的一个先决条件是具有安全事务处理能力,这一能力由安全套接字层(SSL,Secure Sockets Layer)提供。不幸的是,由于美国在加密算法出口上的强制法律限制,apache并不包含SSL支持。但是,有许多针对apache的第三方SSL软件。下面这个比较也许能够帮助你选择所需要的软件。
+     软件    + 发行方式 +     限制     +                  注释                       +
+-------------+----------+--------------+---------------------------------------------+
| Apache-SSL  | 自由软件 | 美国商用受限 | 不建议使用,因为它不是最干净的方案Apache-SSL|
|             |          |              | 实质上是apache的补丁,文档很不完善          |
+-------------+----------+--------------+---------------------------------------------+
| mod_ssl     | 自由软件 | 美国商用受限 | 一个干净的方案。尽管部分基于Apache-SSL,文档|
|             |          |              |齐全                                         |
+-------------+----------+--------------+---------------------------------------------+
|RedHat Secure| 商业软件 | 美国商用受限 | 最便宜的商业解决方案。基于mod_SSL模块。     |
+-------------+----------+--------------+---------------------------------------------+
|Raven SSL模块| 商业软件 | 无           | 就价格而言处于中间价位                      |
+-------------+----------+--------------+---------------------------------------------+
|Stronghold   | 商业软件 | 无           | 对于非常严格的电子商务站点来说,它能够让您非|
|Web Server   |          |              | 常满意。它是三种商业软件中最昂贵的。        |
+-------------+----------+--------------+---------------------------------------------+
    另外,还有一个叫OpenSSL第三方软件,是一个合作的项目,其目标是开发一个健壮的、商业等级的、完整的开放源代码的工具包,用强大的加密算法来实现安全的socket层(SSL)和传输层的安全性(TLS,Transport Layer Security)。由于这个合作项目的时间还不算长,在文档上和mod_ssl模块还有一些差距,相信不久以后应该会有改观。它是免费软件中除了mod_ssl以外的又一个选择,它的具体资料请查阅本站解决方案的有关内容或者《GNU/Linux高级网络应用服务指南》(机械工业出版社出版 LinuxAid网站编著 2001年1月)。我们主要讲解mod_ssl模块的使用——也许仅仅是因为mod_ssl组织声称全球已经有一百万家以上的站点正在使用它来构建安全的站点:)。

    1、获取有关软件包
    值得注意的是,mod_ssl并不为你自己提供制作CA(认证中心)的东东,并且虽然它依赖于SSLeay软件包但是它并没有集成SSLeay——也许它还在考虑美国公民可以使用的rsaref20.tar.Z吧^&^。SSLeay是一个强加密库,它本身已是个独立的跨平台的支持包,你完全可以使用它用来做自己的应用,这比微软在美国加密算法出口限制下卖给我们的弱加密工具强多了。而在OpenSSL却包括了这个东东,所以我们通常使用OpenSSL来代替SSLeay包,顺便还得到了自己签署证书的工具,何乐而不为呢。
    在正式去下载软件包之前,需要考虑使用什么样的版本的mod_ssl模块。不同mod_ssl模块的版本支持不同版本的apache。例如2001年5月20日发布的2.8.4-1.3.20支持Apache 1.3.20(动作还是挺快嘛,呵呵)。我们就使用目前最新的版本吧。OpenSSL就无所谓了,不用最新的0.9.6a,反正SSLeay的变化不会很快:)
    mod_ssl 2.8.4  http://www.modssl.org/source/mod_ssl-2.8.4-1.3.20.tar.gz
    openssl 0.9.6  http://www.openssl.org/source/openssl-0.9.6.tar.gz
    别忘了去http://www.apache.org下载Apache 1.3.20哦,这应该很脸熟了。

    2、解压缩包
    将我们要用的软件包拷贝到/usr/local/src。
   #cp * /usr/local/src
   #tar zxvf openssl-0.9.6.tar.gz
   #tar zxvf apache_1.3.20.tar.gz
   #tar zxvf mod_ssl-2.8.4-1.3.20.tar.gz

    **安装软件包技巧提示(非必要操作)
    最好在编译前和编译后都做一张系统中所有文件的列表,然后用“diff”命令去比较它们,找出其中的差别并知道到底把软件安装在哪里。只要简单地在编译之前运行一下命令“find /* >;ssl1”,在编译和安装完软件之后运行命令“find /* >; ssl2”,最后用命令“diff ssl1 ssl2 >; ssl”找出变化。

    3、编译 OpenSSL:
   # cd ../openssl-0.9.6
   # ./config --prefix=/usr/local/openssl
    注意,这里是 config 而不是 configure。
   # make
   # make test
   # make install

    4、配置Mod_SSL
   # cd ../mod_ssl-2.8.4-1.3.20
   # ./configure --with-apache=../apache_1.3.20
    完成这一步操作后,mod_ssl模块将会把必须的文章自动放置在apache_1.3.20/src/modules目录下,这我们不用关心。

    5、编译apache
     在这里,你完全可以加上其它你需要的模块,例如PHP、PERL等等,配置好后,再在apache的配置选项中添加相关的内容,一同集成编译安装。
   # cd ../apache_1.3.20
   # SSL_BASE=../openssl-0.9.6  ./configure --prefix=/usr/local/apache  --enable-module=ssl  --enable-shared=ssl
     注意,如果你已经拥有一个服务器证书和一个私人密钥,则可以为configure脚本提供如下选项:
          --with-key /path/to/your/server.key
          --with-crt /path/to/your/server.crt
     因为有时需要或者使用者喜欢用知名的CA发的东东。如果有了这一步,下面make后面的授权书的制作就可以省略了。还有一个可选的--enable-shared=ssl选项使得mod_ssl构造成为一个DSO“libssl.so”。关于在Apache支持DSO的更多信息,阅读Apache源代码树中的INSTALL和 htdocs/manual/dso.html文档。为了最灵活地使用mod_ssl,可以使用DSO工具,但是注意,DSO不是在所有平台上的Apache都支持。

   # make
     暂停,不要习惯性的下去就是make install:)。我们需要先处理一些重要的东西(给你自己做个CA,发发证书什么的)。

   # make certificate TYPE=custom
    生成你自己的 CA 和用它来为你的服务器签署证书。需要提供很多信息的。如果你想很详细的了解这个东东,请参考该授权书的安装介绍。
   STEP 0:
    选择算法,使用缺省的 RSA
   STEP 1:
    生成 ca.key,CA的私人密钥
   STEP 2:
    为CA生成X.509的认证请求 ca.csr
    要输入一些信息:
   Country Name: cn 国家代码,两个字母
   State or Provice name: Bei Jing 省份
   Locality Name: Bei Jing 城市名
   Organization Name: LinuxAID CA 组织名,可以根据需要填写
   Organization Unit Name:LinuxAID  CA
   Common Name: www.LinuxAID.com.cn CA
   Email Address: webmaster@linuxaid.com.cn 联系用的Email
   Certificate Validity: 3660  单位为天,10年?先这样吧,反正你以后还会升级
   STEP 3:
    生成CA的签名,ca.crt
   STEP 4:
    生成服务器的私人密钥,server.key
   STEP 5:
    生成服务器的认证请求,server.csr
    要输入一些信息,和STEP 2类似,
    不过注意 Common Name是你的网站域名,如 www.LinuxAID.com.cn
   Certificate Validity不要太大,365就可以了。
   STEP 6:
    为你的服务器签名,得到server.crt
   STEP 7-8
    为你的 ca.key 和 server.key 加密,要记住pass phrase。如果需要配置系统自动启动SSL,请先看清楚安装介绍哦:)

    完成apache的安装
  # make install
  # vi /usr/local/apache/conf/httpd.conf
    修改BindAddress 和 ServerName
    mod_ssl软件包在apache安装目录的etc子目录下安装了一个httpd.conf.default文件副本。你可以使用该文件来测试并配置你的apache服务器。我个人认为它没什么用。
   如果要改变 DocumentRoot 要记得把httpd.conf里SSL Virtual Host Context部分的DocumentRoot设定也改掉。
    SSLCertificateFile和SSLCertificatKeyFile的设定也在SSL Virtual Host Context部分。
    它可能是这样设定的:
   SSLCertificateFile /usr/local/apache/conf/ssl.crt/server.crt
   SSLCertificateKeyFile /usr/local/apache/conf/ssl.key/server.key

    要注意ssl.key ssl.crt等目录和文件的权限,所有的key,csr,crt,prm文件都应该设为 400 属性!

    6、最后测试和系统配置
    如果你的系统已经运行了WWW服务,请先把它停止,使用如下的命令:
   # /etc/rc.d/init.d/httpd stop
   # /usr/local/apache/bin/apachectl startssl
    提示输入pass phrase(就是你前面输入的,你不会已经忘记了吧?)输入后就启动了一个支持SSL的Apache。

    测试它是否工作:通过用一个Netscape与服务器连接并且选择https协议,即:https://youserver.yourdomain.com 或 http://yoursever.yourdomain.com:443,也可以再试一下你的服务器的 ip地址,即:https://xxx.xxx.xxx.xxx和 http://xxx.xxx.xxx.xxx:443。

    如果它起作用了,服务器将把证书发送到浏览器以建立一个安全连接。这将让浏览器提示你接受自己签署的证书。,如果它是来自VeriSign或Thawte的一张证书,那么浏览器将不提示你,因为证书来自一个可信的证书授权机构(CA)。在我们的情况中,我们创建并签署我们自己的证书……我们不想马上买一个。

    将Apache设定为在开机时自启动,修改/etc/rc.d/rc.local并且加入以下行:
   echo "Starting Apache-SSL"
   /usr/local/apache/bin/apachectl startssl
    如果你以前使用了linux中的apache作httpd,需要去掉httpd的自动启动。

    注意,如果还想获得更高的安全性,建议使用chroot来安装配置你的WWW服务器。有关内容请参考LinuxAID的详细资料。

    八、Linux下的WEB服务器维护与管理

    在这一节里,我们将讲解一些Apache使用的常见基本内容,主要包括CGI配置和验证Web用户的常用部分。我们的讲解是基于假定你是一个NT服务器的管理员或者知道一些WEB管理的常识的,也就是说,我们主要把精力集中在操作上而非概念上,这是我们专题一直秉承的风格。

    ■配置Apache的CGI脚本
    · 为每一个主机(包括虚拟主机)在DocumentRoot外建立一个单独的CGI中心目录,是建立一个安全CGI环境的开始。
    · 为你的CGI目录建立别名,使用ScriptAlias行:
   ScriptAlias  /alias/   /path/to/CGI-program-dir/
例如你在为主web服务器设置CGI支持,可编辑httpd.conf文件,加入如下行:
   ScriptAlias  /cgi-bin/   /www/themain/cgi-bin/
如果你在为虚拟主机配置CGI支持,你则可以在定义虚拟主机的容器<VirtualHost……>;</VirtualHost>;中添加ScriptAlias行。
   别忘了,我们的WWW服务器和IIS不同,我们是基于文件配置,基本上所有的设置都和httpd.conf文件的修改有关。
    · 限制CGI目录中可被访问的执行文件的后缀。
    缺省的,在接受请求后,Apache会试图运行CGI目录中任何可执行文件(根据文件许可)——也就是说它会问你匹配任何存在的后缀。我们一般只希望执行两种后缀的文件:.pl和.cgi。这可以通过AddHandler处理器来实现。例如:
   ScriptAlias /cgi-bin/ "/www/themain/cgi-bin/"
   <Directory "/www/themain/cgi-bin">;
       Options ExecCGI
       AddHandler cgi-script .pl .cgi
   </Directory>;
    第一行建立一个目录别名,第三行允许运行这一目录中的CGI程序,第四行告诉apache只要遇到这俩后缀的文件名,就必须将它当作CGI程序执行。
    ·为特殊目录使用AddType建立新的CGI后缀
    如果你想在特殊的目录中建立新的CGI后缀,也可以使用.htaccess文件(或由AccessFileName指令指定的某个文件)。
    在使用单目录的访问许可文件(.htaccess)添加新的扩展名之前,必须在httpd.conf建立一个<Directory>;容器,如下所示:

   <Directory "/path/to/your/directory">;
       AllowOverride FileInfo
       Options ExecCGI
   </Directory>;

    其中AllowOverride FileInfo告诉apache打开单目录的访问许可文件(.htaccess)的FileInfo功能。这一功能可允许用户在单目录访问许可文件中使用AddType指令。然后我们在该目录下简单的建立一个.htaccess文件,内容如下:
      AddType application/x-httpd-cgi .reg
    这样就添加了一个.reg的后缀了。

    ■Apache的HTTP认证
    Apache支持基于主机的验证、基本HTTP验证等验证方案。HTTP验证很常见,我们主要介绍它的设置。默认情况下,Apache使用mod_auth.c模块提供验证支持。mod_auth可以基于单个用户进行,也可以基于一个组的所有成员来认证。我们只介绍单个用户的情况。

    我们使用一个例子来详细介绍整个操作流程:www.xxx.com的WWW服务器的DocumentRoot为/www/xxx_com/,要对/www/xxx_com/user_admin/目录设置访问限制,并只允许webadmin这个用户访问,口令为6yhnmju7。下面是建立这个受限访问的步骤:

    ◇STEP 1: 使用htpasswd建立用户文件。
    使用apache发行包中提供的htpasswd工具程序,建立一个httpd.conf文件中AuthUserFile指令指定的用户文件,一般是.htpasswd文件。
   htpasswd -c /data/apache/xxx_com/user_admin/.htpasswd webadmin
    htpasswd程序将询问webadmin用户的口令,输入6yhnmju7,再重新输入一遍。这样,我们便在/data/apache/xxx_com/user_admin/目录下建立.htpasswd用户文件。注意,我们并没有把该用户文件放在DocumentRoot路径内,这是基于安全性考虑的,避免该文件被意外通过web下载。使用-c参数是要新建立一个用户文件的意思,你可以参考htpasswd --help获得该程序的参数说明。我们没有指定加密算法,所以缺省使用标准的crypt()函数加密。
    确保上述用户文件能够被apache所访问到。

    ◇STEP 2: 建立.htaccess文件。
    使用文本编辑器(例如VI)在/www/xxx_com/user_admin/.htaccess文件中添加如下内容:

AuthName "xxx.com用户管理员登录"
AuthType Basic
AythUserFile /data/apache/xxx_com/user_admin/.htpasswd
require user webadmin

    下面是各个指令的解释:
    AuthName:设置验证的名称。
    AuthType:设置验证类型。由于只支持基本认证,所以只能填写Basic。
    AythUserFile:指定用户文件的路径和文件名。
    require:指定webadmin用户可以访问该目录。

    ◇STEP 3: 设置文件许可。
    在建立了.htaccess和.htpasswd文件后,确保只有apache才能读取这两个文件是非常必要的。

    ◇STEP 4: 测试。
    使用web浏览器访问如下链接http://www.xxx.com/user_admin/。浏览器应该显示一个弹出对话框。不输入任何东西,点确定,应该导致验证失败,会再次产生对话框。点取消,会获得来自apache的标准的Authentication Required错误信息。点浏览器刷新,再次显示对话框后,输入正确的用户名和密码,这时候顺利进入该目录。配置成功。
    如果没有顺利进入该目录,请先检查输入用户名密码的正确性和大小写。

    ※附录:Linux下WWW服务器安装FAQ
    Amassed by LinuxAID lanf

提问:我的配置是redhat 7.0+apache+php+mysql,我的
       mysql 服务器在控制台上可以用mysql访问,但是
       在php程序中用mysql_connect("localhost","root","password"
       访问时却返回无法通过/var/lib/mysql/mysql.sock访问mysql.
       请问是什么原因。
回答:在RH7里普遍有这个问题,虽然你完全安装了RH7.0,但却无法使用
       这个redhat 7.0+apache+php+mysql集成环境。所以建议大家还是用自己手动编译
       重新安装这个东东。先安装MYSQL,然后再编译安装PHP,这样就可以了。
       该问题在redhat 7.1中已经解决。你只需要安装时选上development下language下的php-mysql
       就可以使用这个集成环境——当然你需要选择安装该有的PHP等包,呵呵。

提问:Resin中的libcaucho.so not found 错误?
回答:libcaucho.so包含了一些用于Unix的JNI。当你调用配置make时,它必须被编译。
由于某种缘故,JVM没有取得库。你很可能要检查LD_LIBRARY_PATH是否在你的环境以及wrapper.pl中。
对很多站点来说,libcaucho.so丢失不是一个大问题。它只是grab一些CPU statistics。
但是,it also enabled the setuid needed by user-name and group-name. 所以如果你从root使用user-name来改变用户,
则需要libcaucho.so处于运行中。

****************************

提问:如何将Resin安装为一个Linux service?
   这是一个很基本的问题。
   在我的Red Hat 6.2中,我在/etc/rc.d/rc.local文件中加入了下列行从而使Resin成为一个服务:

   /usr/local/resin1.1/bin/srun.sh start

   但当我重启系统后, Resin没有起来。
  回答:
(Guy Tal回答)
你必须在 rc 文件中设置环境参数(当你从命令行执行,它们只在你自己的环境有效,而rc文件做为root来运行所以
没有被设置)。加入下列行:

----------Snip----------
PATH=/usr/local/bin:/usr/bin:/bin
export PATH

JAVA_HOME=/usr/java
export JAVA_HOME

RESIN_HOME=/opt/resin1.1
export RESIN_HOME

CLASSPATH=/usr/java/jre/lib/rt.jar
CLASSPATH=$CLASSPATH:/opt/resin1.1/lib/resin.jar
CLASSPATH=$CLASSPATH:/opt/resin1.1/lib/jsdk22.jar
CLASSPATH=$CLASSPATH:/opt/resin1.1/lib/jdk12.jar
export CLASSPATH
----------Snip----------

你也可以在srun.sh或者wrapper.pl中设置这些环境参数。

************************************

提问:Resin中各文件都放在哪里?

回答:文档root可在resin.conf中设置,使用app-dir:
<http-server app-dir='/www/htdocs'>;
...
</http-server>;
每一个虚拟主机和每一个web-app都有自己的app-dir。app-dir配置必须放在resin.conf,而不是在web.xml
(否则Resin无法找到web.xml):
<web-app id='myapp' app-dir='/www/myapp'>;
...
</web-app>;
如果你没有定义app-dir, Resin将使用在 /www/htdocs/myapp 中的id。
可选的,你可以把一个web.xml放在[app-dir]/WEB-INF/web.xml (同样,根据JSDK 2.2)。
web.xml可以包含web-app在resin.conf中可以放的东西。
自动重载类缺省时属于 [app-dir]/WEB-INF,根据JSDK 2.2:
classes -- auto-load/recompile Java servlet/bean/classes directory
lib -- auto-loaded *.jar files
在web-app中, 你可以增加到auto-reload classpath:
<classpath id='myclasses' source='/home/work/proj/src' compile='true'/>;
JSP/Java工作目录是 /tmp/caucho (或  empcaucho)。你可以这样修改:
<java compiler='javac' work-dir='/path/to/my/work/dir'/>;
最后,启动脚本将在Resin启动前,在resin1.1/lib查找启动脚本并加入到classpath中。

**********************
提问: 安装websphere以后/opt/IBMHTTPServer/bin目录下只有 adminctl setupadm setuplang sidd
四个文件,执行./adminctl start提
示:{./adminctl : /opt/IBMHTTPServer/bin/httpd:目录或文件不存在
./adminctl start:admin http could not be started}
请问是否只有我才碰到此问题,如果是如何解决

回答:
这说明你的IBM HTTP Server没有安装上去。
可以用这条命令察看:
rpm -qa|grep IBM_HTTP_Server
如果没有显示IBM_HTTP_Server-1.3.12-2,则说明你没有正常安装http Server。引起的主要原因是由于在安装时原系统HTTPD正在运行,引起安装程序不能正常卸载Linux系统原带的Apache Server。

解决办法:你把apache卸下来,
killall -9 httpd
rpm -e apache...
然后再卸下来IBM packages
/mnt/cdrom/uninstall.sh
然后再执行命令
/mnt/cdrom/install.sh
安装系统就行了
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP