如何把IHS6迁移到IHS8?
IHS的迁移比较简单,正好前几天做了一个IHS6到IHS8的迁移,全新的服务器,全新的IHS8安装,这里就以IHS6到IHS8为例介绍一下简要的迁移步骤和需要注意的地方。
步骤
-
拷贝文件
把老服务器上的httpd.conf文件拷贝到新服务器上。同时需要把SSL证书,DocumentRoot目录全部都考过去。
-
修改配置文件
修改httpd.conf文件,把监听的IP改为新服务器的IP地址,HostName等等配置都要做响应的改变。
如果要配置的服务所监听的IP是一个虚拟IP,那就在服务器上添加好虚拟IP。
-
尝试启动IHS服务
cd <IHS_HOME>/bin httpd -k start -f <IHS_HOME>/conf/httpd.conf
-
在Windows系统下,如果启动的时候没有任何错误,就把这个服务作为Windows服务添加到服务管理里,以便于自动启动。
cd <IHS_HOME>/bin httpd -k install -n IHS-yourservice -f <IHS_HOME>/conf/httpd.conf
如下图:
遇到的问题及解决方案
-
第一次尝试启动的时候出现了Syntax Error,也就是语法错误。
这样的问题比较容易解决,找到错误信息中对应的行,发现错误改掉就好了。
IHS6到8,下面这行配置一定需要修改:
LoadModule access_module modules/mod_access.so
需要改成:
Loadmodule authz_host_module modules/mod_authz_host.so
这是IHS接收用户访问的模块有变动,修改之后就没问题了。
-
尝试启动的时候错误信息里没有Syntax Error(说明语法没问题),但是启动不起来,创建socket失败之类的。
这样的问题多半是端口被占用引起的,解决方法如下:
比如我们的IHS服务需要监听80端口,用
netstat -ano | findstr 80
(Linux的话就用netsh -ano | grep 80
)找到哪个应用正在监听这个端口,这个命令可以看到监听端口的PID。随后打开任务管理器,打开菜单的 视图 – 选择列 – 勾选PID那一项,就可以从任务管理器里找到那个应用到底是什么了。
在我配置的过程中,发现占用80端口的是IHS安装时默认启用的那个IHS服务,所以关掉它,改成手动启动就没问题了。
图中进程1184正在监听端口80.