科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网服务器频道如何在家里架设不断线的web服务器

如何在家里架设不断线的web服务器

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

先别误会,我这里说的家庭服务器,可不是现在炒得昏天黑地的那些个用来打游戏、共享上网、看DVD大片、控制家电的怪物“家庭服务器”,我这里说的是通过宽带架设在自己家里的服务器,

来源:51cto 2009年9月18日

关键字: 服务器 Web服务器

  • 评论
  • 分享微博
  • 分享邮件

在本页阅读全文(共2页)

  不断线窍门之三:自动登入系统,自动锁定系统。

  Windows2000服务器运行久了,就算不死机,速度也会越来越慢,程序运行也会渐渐显得不稳定,为了保持服务器的速度和稳定性,通过PCanywhere之类的方法远程重启一下服务器,是管理员经常的行为,有时候偶然发生软件冲突,或者系统温度过高,也会造成服务器自动重启,这是就会发生一个问题,造成重启后的服务器无法连上互联网继续提供服务。

  说来也好笑,这个问题是windows2000自身安全性造成的,估计微软的软件工程师设计软件的时候没有想到有一天这东西会用在遥远中国的一台没有固定公网IP地址的服务器上,所以当windows2000高级服务器重启系统或者开机后,系统会在进入桌面之前,会显示一个提示窗口,要求同时按下“Ctrl+Alt+Del”才能输入用户名和密码,输入用户名和密码之后,才能进入系统桌面。

  这就出现了一个问题,就是一旦服务器出现问题,远程重启系统之后,系统启动过程会停留在这个要求按下“Ctrl+Alt+Del”的地方,此时,动态主机软件还没有启动,服务器IP没有被提交到动态主机服务商那里,现在的远程管理是需要针对IP地址才能生效的,我们这时候不知道服务器现在的IP地址,所以也就无法通过远程管理连接到服务器,更无法同时按下“Ctrl+Alt+Del”然后输入用户名和密码,进入桌面启动动态主机客户端(有点晕了吧,这简直比鸡生蛋蛋生鸡还要复杂)。那么如何解决这个问题呢,其实很简单,我们就要想办法让服务器自己输入用户名和密码。许多朋友都知道通过修改注册表或者用某些软件设置可以达到这个目的。不过现在有一款更简便有效的小软件,可以轻松解决这个问题。

  下面就是这款小软件的界面,界面很简单直观,一看就会。先在“自动登陆系统”前面打勾,然后输入系统管理员的用户名和密码,点击保存。这个软件的作者想得很周到,当系统重启之后,进入了桌面,如果不锁定桌面,这时服务器好像一个敞开门的房间,很容易让黑客乘虚而入,所以在“进入系统后自动锁定计算机”前面也打勾,延时一般就选择默认的0秒就可以,也就是进入系统后立即锁定桌面,除非管理员通过远程管理输入“Ctrl+Alt+Del”后,输入密码才能进入桌面。这时桌面虽然锁定了,但是并不影响随windows启动的动态主机客户端软件启动,客户端会自己输入动态主机用户名和密码,于是,新的动态IP立即被提交给动态主机服务商,外界又能通过免费域名访问到服务器了。

  

  这个可以让系统自动登陆的小软件还有一项简单实用的功能,就是定时重启服务器,大家都知道,window系统运行久了,难免速度变慢,出现错误,定时重启一下服务器,好处很多,一般放在电信机房的服务器,也要根据需要经常重启一下,让服务器恢复到比较好的状态里。我在“定时重启系统”前打勾,选定“特定时间重启”,我设定每周六凌晨三点,系统重启一次,我认为这个时段,一般访问量较小。最后点击保存,然后重启服务器,刚才的设置立即生效。当然,你也可以选择每隔××分钟重启一次服务器。一切简单明了,根本不用懂什么注册表,也不用使用什么复杂的软件,你说简单不简单?

  不断线窍门之四:随时监测IIS状况,自动重启IIS。

  使用windows的用户,还经常遇到一个问题,就是为服务器提供web服务的IIS程序无响应,或者出错,导致服务中断,这时服务器还没有死机,只是IIS“死掉”了,怎么办?当然可以通过远程管理,人为重启IIS。不过,如果你恰好不在电脑旁边,或者无法上网,怎么办?我想到一个办法,可以让服务器自己经常检测IIS的运行状况,发现 IIS“死掉”、“出错”的时候自动重启IIS,如果连续重启IIS几次,还是无法解决问题,就干脆自动重启服务器。方法很简单,也要用到一个小软件,请看下图:

  这是个和小的监控程序,国产软件,只能用于Win2000/XP,不能用于NT4。

  先将 HttpMon.exe 复制到硬盘上,并将其添加到Windows的任务计划中,设置为"计算机启动时运行",以administrator 的权限运行。这样监控程序就会随windows系统一起启动。

  这个软件同刚才介绍的那个小软件一样,具有定时重启功能,可指定每隔几天重启一次计算机或是重启IIS。若是指定为0天时表示每天重启一次。不过我们主要用到的不是这个功能。我们主要用的是这个软件提供的“http监控”功能。

  1、首先用记事本,建立一个新文件,写上一个简单的代码,如,保存为state.asp,将来软件通过访问这个文件,可以检查IIS是否死掉。若要检查链接数据库是否正常还可以把代码写为:

  运行HttpMon.exe 点击"添加"按钮添加监控条件。

  a)在"检查链接"里加上用来监控的页面 如 http://vipemail.bjs.cn/state.asp

  b)在"检查频率"中可以指定多长时间检查一次,默认是20分钟

  c)在返回信息中选择要检查的条件,有几种情况:

  返回状态等于,返回状态值不等于,文件大小等于,小于,大于。

  "返回状态值" 指IIS返回的客户端时的状态。

  200 是正常

  302 文件重定向

  404 文件找不到

  500 服务器内部错误

  默认是:当返回状态不等于200时(表示IIS出错时)重起IIS

  当上面情况出现时可做几个对应处理:

  a)重启计算机 b)重启IIS c)关闭计算机 d)请求页面 "请求页面"可用于扩展程序功能,如通过请求一个程序页面 发信给管理员。

  

  

  2、因为有时重启IIS不一定成功,所以当上面错误情况出现时,程序会自动缩短检查的隔时间,默认为5分钟。也可以自定义。当上面操作多次重试都不成功时,还可以设置对应的操作。例如:当重启了3次IIS后还是有错误,这时可以在后面设置为重启计算机。

  3、日志功能可以记录Http监控程序的工作情况,他可以记录什么时候检查过什么页面,什么时候出现了错误,对应操作是什么。

  怎么样,麻雀虽小五脏俱全,想得够周到吧?其实这个程序不仅可以用在家里的服务器上,对于托管在电信机房的固定IP地址的服务器,同样可以使用这个软件,可以减轻不少管理员的工作负担。

  设置好之后,今后如果想调整一些设置,还可以通过软件的“编辑”功能来修改,很方便。

  不断线窍门之五:停电恢复之后自动开机,电话遥控RESET。

  现在我们要解决家庭服务器的最后两道难关??停电和死机!

  从我们第一天用电脑起,前辈们就反复提醒我们要提防??停电。一旦停电,写了一半的文章,编了一半的软件,立刻化为乌有,用电脑怕停电,用服务器同样怕停电,而且特别怕,尤其是我们这样把服务器架设在家里,出门之后,一旦停电,服务器立刻关机,随之一切服务立刻终止,远程管理软件也没用了,因为已经关机了,即使安装了带有远程唤醒功能的网卡,也没用,因为动态主机软件根本没启动,你根本不知道现在服务器网卡的IP地址,所以你无法通过网卡唤醒。你也不要奢望有人会帮你按一下power键开机,因为这不是在机房有人24小时值守啊。如果你是“单身大虾(光棍的别称)”恰好又出差在外,那么你就惨透了,什么时候回家,什么时候你的网站才能恢复访问,没辙。

  除了停电,死机也是个很麻烦的问题,如果服务器真的死机了,也和停电一样,什么远程管理软件也不起作用,前面那些安装在服务器上的自动重启的小软件也都随着服务器“死”了,不会发生作用了,这时如果旁边有人,只要轻轻按一下服务器的 RESET键就一切OK,可惜,这时家里没人,干着急,干瞪眼。

  难道真的没有办法了吗?为停电和死机的问题,我也伤透了脑筋,目前总算找到一个不错的解决办法??电话唤醒伺服器。

  也许不少朋友在56Kmodem时代都听说过、试验过电话唤醒电脑,那时候这是modem的一项时髦的功能,不过实际上也不怎么好用,要配合主板设置等,常常出现一些莫名其妙的故障,所以周围真正使用的人并不多。不过这倒是给我一些启发,就是利用电话是不是可以控制服务器的开机、重启呢?

  用56K猫的唤醒方案当然不行,即便可以将因停电而关机的服务器唤醒(开机),但是对于死机就无效了,因为这时电脑并未关机,还在开机状态,怎么办呢?此时最好是按一下reset键,可惜56K“老猫”做不到。

  我知道也许通过制作某些控制电路可以解决这个问题,但我是个懒人,虽说喜欢DIY,可如果叫我设计电路,焊接元件,我可没有耐心,我喜欢简单实用的DIY方案,充分利用已有的软件和硬件资源,用最简单的办法达到目的,是我的一贯方针。这次我同样找到了一个简单的办法。

  我在市场上买到一个“小砖头”??千际牌电话控制伺服器(服务器专用),这是一款针对性很强的产品,专门针对使用动态主机软件架设服务器的用户而设计,从多方面考虑到用户的实际需求,可以远程通过电话对服务器发出命令,使服务器实现开机或者重启。该伺服器使用了现在流行的单片机技术。

  千际牌电话控制伺服器(服务器专用)在实际使用中,安装和操作都很简便,按照说明书将伺服器连接在服务器和电话之间,伺服器使用一台小功率12V直流电源供电,耗电量极小,伺服器的电源和服务器的电源线都接入同一个电源插座。连接好之后,认真检查无误。现在实验一下效果。

  1、停电自动恢复

  服务器运行时按下电源插座的开关,模拟突然停电状态。

  服务器立即关机,伺服器也断电停止工作。

  再次按下电源开关,恢复供电,伺服器立即工作,并自动启动服务器,不久服务器启动成功,动态主机客户端软件自动登陆成功,外界对服务器的访问随即恢复。

  2、死机电话Reset

  在服务器死机时,通过远程管理软件已经无法连接到服务器进行重启,这时候拨入电话,电话振铃6声之后,电话听筒里传来三声提示音,这是按下电话“0”键,伺服器开始动作,服务器立即被reset,不久以后,外界对服务器的访问再次恢复正常。

  3、电话开机

  在伺服器上有一个转换开关,可以自由选择是否“恢复供电时自动启动服务器”,如果选择否,则当停电后恢复供电时,伺服器不会自动启动服务器开机,而是要等待管理员拨入电话,振铃6次之后,听到3声提示音,这时按下电话“1”键,伺服器开始动作,服务器会被开机。这个功能适合那些不需要不间断开机的用户和需要远程开启服务器的用户。

  神奇吧,就这么一个小东西,使我们不再害怕动态主机的死敌??停电和死机。自从有了它,及时我在外地出差发现服务器没有反应了,一个电话过去,一切立即OK。爽啊。

  以上我说的这些只是我的一些小小经验,让广大老鸟们再次见笑了,我的目的是尽全力来避免架在家里的服务器断线,这里说的断线,是泛指服务器对外提供服务的中断,并不是通常我们所说的上网掉线。用了上面这些法子,我的服务器的断线率已经很低,接近电信托管水平(小编:删去自吹自擂的废话2K字),即使外出时发生服务器断线,也能通过打电话很快恢复。不过,如果你特别倒霉,你的服务器遇到的不是停电,也不是死机,而是跳闸、雷劈、水淹、火灾、台风、海啸、老婆摔服务器,那解决的办法也就只剩下一个了,就是自认倒霉,毕竟谋事在人,成事在天啊。是不是?谁让你不去电信机房托管的?害怕了?害怕了,明天就给机房打电话吧,呵呵。

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章