分类

服务器区

FreeStations(个人服务器 可解决内网限制) v1.00 官方正式版

FreeStations(个人服务器 可解决内网限制) v1.00 官方正式版

大小:838 KB

语言:简体中文系统:WinXP, Vista, Win7

类别:服务器区时间:2014-01-22

FreeStations 是一款服务器软件,网络上作为个人服务器软件比比皆是,但笔者认为服务器要真正具备实用性,非得解决外部的访问问题,否则,即使你写出了精美的网页,也只能供自己赏玩而已,从这个意义上,如何解决内网、外网、和动态IP的问题更具有意义,
FreeStations 是笔者经过两年时间开发的一款服务器软件,网络上作为个人服务器软件比比皆是,但笔者认为服务器要真正具备实用性,非得解决外部的访问问题,否则,即使你写出了精美的网页,也只能供自己赏玩而已,从这个意义上,如何解决内网、外网、和动态IP的问题更具有意义,
限于笔者水平,问题肯定不少,希望能有读者的不吝赐教,使其日臻完善,不胜感激。

FreeStitions旨在建立个人网站,本软件具备WEB服务器功能,无须安装微软IIS或其他服务器,支持html、htm、ASP等基本功能,通过借助有独立地址的网络主机,局域网内机组同样可以建立自己对外网站。具备点到点(P2P)的功能。
限于作者水平有限,其中存在不少的BUG,欢迎大家多提宝贵意见,共同完善,不胜感激!(如更改升级等原因导致不能使用,请注意软件作者更新,或发邮件索取)。
操作方法很简单:首先安装程序,如第一次运行需要设置,其中“网站名”为您的网站身份标识,中心站点为“http://hqlasp.kilu.de/”,“php”服务器,HTTP监听端口一般为80,也可任意设置,通过“网站本地路径” 、“默认主页文件” “端口” 等内容,设置您的服务器参数,按“注册”,注册成功后按“确定”。设置完毕,直接运行。
安装后不能运行,可能是您的系统缺少C++2005运行库,网上有下载!


软件特点
1、 解决目前ISP分配地址的随时变化,无固定IP地址(静态地址),不便于个人主机架设服务器的问题。
2、 解决局域网主机访问限制,无论内网外网均可架设对外个人服务器。无需“花生壳”一类的动态域名转换。
3、 所有的访问行为没有通过集中服务器,是一种松散的分布式结构,所有的访问数据只有本地主机可以储存,私密性可得到最大限度的保证。(登陆中心不负责记录访问行为。)
4、 操作简单,软件可直接注册个人域名(网站名)。按提示一次性注册后,不需要重复操作,也可以直接在注册表“HKEY_LOCAL_MACHINESOFTWAREFree Stationssetting”中修改注册内容。(原则上网站名一经注册不允许修改。)
5、 本软件为P2P性质,其宗旨是“人人为我,我为人人”,免费使用。
功能剖析
其一作为服务程序的HQLWinServerPrc.exe程序,主要功能

主机登陆注册和服务中心,获取本机的外部网络地址,如本机处在局域网,则挂接一其他有独立地址的主机(下文称服务器),采用自动映射方式获取外部网络地址。
接受网络其他主机地址信息,录入本地地址库。
监听和是接受HTTP请求,并对地址分析,转发到其他主机或送本地服务器程序处理。
检测本地服务器是否运行,以便遇到本地访问HTTP请求,及时送服务器处理。检测其他主机连接情况,如有关机或退出服务,自动刷新用户表列。
检测网线是否畅通,遇网路故障、断网等问题可及时处理。

其二是服务器主程序HQLasp.exe,主要功能是:

本机服务器端口、目录、登陆中心等的设置和修改(鉴于有杀毒软件报警,自动开机一项暂未执行)。
界面操作,工作区为所有登陆主机的用户列表,采用超级链接方式,可直接点击访问。
接受到本地HTTP请求,可用内嵌基于IE内核的简易浏览器打开。
可以处理html、 htm 、asp、文件夹等服务器文本。
原理简介
为便于表示,图中服务器和客户机是同一台主机
HQLWinServerPrc.exe 进程:
主监听SOCKET(图二S8 下文称分拣器)采用目前较为先进的IOCP(完成端口)模式,可以轻松应对大量的并发访问,同时在分拣和转发HTTP请求方面较为轻松。本地请求通过套接字复制的方式交由本地服务器处理。
内含一个事件模式的监听模式的SOCKET(图二S1),用来处理登陆,客户信息等。
和本地服务器之间的调度采用RPC方式传递信息和参数,采用共享内存方式处理登陆数据库,(与该进程同时存在一个256K大小的文件HQLWinServerPrc.rar既是)。
通过预定系统事件,可以及时获取断网、网线拔出等非正常连接事件,本进程可直接自动重启登陆线程,与网线恢复的同时可以将所有信息更新,如IP地址更新等。
该进程内存消耗小,需要随时监听事件,故采用NT服务方式运行,服务显示名称“hqlFreeStations”。
登陆过程模式:
图二所示每台主机通过登陆中心获取合适登陆的服务器后,S1发出登陆请求到服务器的S8,S8经过信息处理后发回S1,发回信息包括连接信息(类似GUID形式的一组标记,客户机过该标记和服务器建立通信渠道),其他登陆主机数据,同时,服务器将该登陆客户信息上溯发给其登陆的另一服务器,通过类似的传输途径,每台主机都存储了该网段的所有主机地址等可随时更新的客户信息,退出过程类似。
HTTP请求处理模式
如图三,客户AA与服务器A建立通信,客户BA与服务器B建立通信,客户AA需要访问服务器B上的客户BA的主页时,HTTP请求发送给服务器B (Sy线),服务器B经分拣信息,将请求转发给客户BA(Son线),客户BA 经过处理后,信息发回服务器B(S2线),该信息再次经过分拣后发回客户AA(SY线),这样,客户AA就能看到客户BA主机上的网页。转发的过程略显复杂,但由于服务器采用的IOCP模式,实际过程还是很快捷。
可能的问题
1、 无法正确安装或安装后不能运行:
可能是您的系统缺少C++2005运行库,这是系统必备的库,网上有下载。
2、 不能按程序设置或注册:
原因同上,服务中心网络可能故障,程序需要访问该网络登陆和查询其他主机。
3、 已经按程序设置,无法登陆或显示的地址是h t t p : / / 127 . 0 . 0 . 1 :
服务中心网络可能故障,不能访问;
其次可能原因是您处于局域网中,暂时没有其他主机登陆,故只能显示您自己主机。
4、 程序崩溃
可能操作系统不兼容,Windows XP、WIN7上运行应该无此问题,如其他操作系统,请将本软件运行日志(system32 目录下HQLWinServerPrc.log)发给笔者邮箱,不胜感激。
5、 程序报毒:
可能有些杀毒软件的作用机制不同吧,笔者之前用360运行期间确实有报毒,听说要到那网站申报解除,也没有去尝试,改为金山毒霸后未见报毒。但软件绝对没毒!

∨ 展开

网友评论

我要跟帖
取消
所有评论 共 0