高校校内网址导航站的研究与实现
2014-11-30郑海山
郑海山
(厦门大学 信息与网络中心,福建 厦门361005)
一、引言
高校内部的网站主要分为以下几个类型:高校门户、各部处网站、研究所和科研机构网站、会议网站、校内信息化应用、教师个人主页、学生社团网站、图书馆资源等。在厦门大学,目前校内共有超过700个网站。除了以上几种类型外,高校相关的网站还包括高校教师在互联网上的微博、博客、其他专业网站的页面。师生员工和校外人员发现这些网站还主要以高校门户、信息化门户、搜索为主。[1]
高校门户网站以学校简介、师资力量、招生、新闻等内容为主,门户除了新闻外其他内容的更新频率较低。[2]信息化门户以聚合校内信息化应用为主。[3]而这2个门户都无法囊括高校校内外的所有相关网址。大部分研究所和会议站点一经建立无人访问,为了增加网站的曝光度,还应引入以上两个门户之外的第3种网址导航站作为一个有力的补充。
网址导航站除作为收集所有高校校内外相关网址的功能外,他还可满足以下两种访问需求:(1)作为高校校内用户的上网门户,校内用户可将其设置为浏览器主页,从网址导航站一键即可进入信息化应用和图书馆、学生处、人事处等网站。(2)满足用户无目的浏览需求。用户可通过网址导航站了解高校的整体信息化建设水平、某个学科相关的所有网站、高校的科研成果、学生社团等类别的信息。
所以高校校内网址导航站起到对外负责展示高校科研实力,对内方便师生员工发现网站的作用。建立高校校内网址导航站是高校网站信息化建设必不可少的一个环节,其重要性程度与高校门户和信息化门户一样。
二、校内网址导航站分析
笔者对国内前几大高校的导航网站进行了分析,分析对象以在Google搜索内能搜索到的为准。以在2014年2月份,使用同一浏览器、同样设置、首次页面访问禁止缓存、二次访问为有浏览器缓存的导航网站。测试结果如表1所示。
同时分析得出,清华大学导航网和中国科学技术大学网址导航页面较为完整,但是里面还包含着大量的其他校外站点。其中浙江大学导航做了网址搜索拼音功能,但是使用时提示错误而无法正常使用。所有的站点手机下访问效果均较差,没有对手机做优化。
经过分析比较,笔者归纳出高校校内网址导航站应具有以下特征:
(1)高校校内网址导航站应具有权威性,收录网址全面,以体现大学文化、突显学子乐观,积极向上的精神和展示科研氛围为主。导航站应有专人负责审核维护,导航站内网址必须是可对外公开的网站。私人工作室和待发布站点应剔除。
(2)导航站应以校内网址为主,商业网址的维护成本较高,若要提供应链接到互联网上专业的导航网址hao123、百度导航等。
(3)导航站应提供让用户提交网址功能,应提供让用户可自定义网址功能。
(4)导航站作为高校师生和校外人士访问的门户,应对访问速度做优化。导航站设置为浏览器首页后不应影响到用户浏览器速度。搜索,农历等在不影响速度的情况下可酌情添加。
(5)导航站应对移动终端访问优化,可采取响应式布局优化。[4]
(6)导航站为了统计访问频率高低应对用户访问网址行为进行记录。
(7)导航站应提供多种网址被发现渠道,包括分类、搜索、全部展示等方法。
表1 部分高校网址导航站分析
三、校内网址导航站实现细节
1.系统框架
厦门大学校内网址导航站操作系统为Ubuntu,Web服务器为Apache2,数据库使用轻量级的SQLite数据库,脚本使用Python语言开发,网页后台语言为PHP。网址的预览图使用c#开发。网站前端JavaScript框架使用JQuery,CSS框架使用Bootstrap。系统框架如图1所示。
图1 系统框架
2.网址收集
导航站的网址收录应当全面,在高校这方面有着天然的优势。在厦门大学,笔者使用以下几个方法收集网址:
(1)备案登记系统
根据中华人民共和国国务院令第292号《互联网信息服务管理办法》和中华人民共和国信息产业部令第33号《非经营性互联网信息服务备案管理办法》,高校都已经建立了自己的备案系统,通过检索备案系统的数据,可以获得大部分网站的名称和网址。
(2)DSN记录
高校有以大学缩写命名的.edu.cn后缀的域名服务器,通过检索DNS记录,再根据DNS记录模拟访问网页端口也可获得在用网址和其名称(名称以网站首页标题为参考)。
(3)端口扫描
在以上2种方法外,还有些服务器没有DNS记录,尚未履行备案流程,这些可以通过扫描本高校内部的IP段,查找所有80、8080端口上的Web应用,使用Python客户端模拟访问获得在用的网址和其名称。
(4)用户登记
有些教师的微博、博客、其他网站等不在校内登记,有些会议站点使用校外的建站平台,这些站点应当允许用户自行提交网址。
通过以上4种方法收集到的所有网址,筛选掉重复记录,整理网址网站名和别名,通过人工过滤一些内部的不适合在互联网公开的网址,最终可以得到高校所有相关的网址。网址数据库定义如表2所示。
3.网址分类
收集到大量的网址后,需要对这些网址进行归类以方便访问。由于单个网址可能会属于多个类,为了简化设计,笔者应用了非常自由的贴标签方法对网址进行分类。[5]每个网址属于的所有标签用逗号分隔保存,PHP后台程序遍历网址Category字段即可收集到某一个分类的所有网址。
在厦门大学,笔者按照高校访问用户角色区分,分为“常用网址”、“学生服务”、“教师服务”、“文献资源”、“特别推荐”、“个人”等分类。[6]其中“常用网址”是根据后台记录的用户对网址的访问频次把最常被访问的网址做的归类。分类采用人工分类。
表2 网址数据库定义
4.网站设计
厦门大学校内网址导航站根据分析得到的网址导航站的主要特征实现了以下功能:首页栏目由菜单、搜索框、搜索结果区域、“常用网址”、部分类别网址构成。其他页面包括自定义网址页面、全部网址页面和带网址预览图的全部网址页面。搜索功能可根据拼音或者拼音首字母搜索,搜索结果立刻显示。
为了在移动端有更好的体验,网页排版使用Bootstrap的响应式布局,在桌面浏览器一行显示12个网址,在手机端浏览器一行只显示2个网址。桌面浏览器的导航条在手机浏览器可自动缩小为下拉菜单。通过Bootstrap CSS框架,无需修改后端PHP代码即可达到在不同大小的浏览器有不同的显示样式。
在显示所有网址页面时,为了让用户对网址的网站内容有更直观的印象,笔者对所有网址的网站首页作了截图显示在页面上。截图使用c#语言,Visual Studio开发,通过WebBrowser控件,访问网址并截图保存,保存的文件名为网址的MD5值。通过定期运行c#程序更新首页截图。最终展示效果如图2所示。
为了获得最快的访问速度,笔者对网址导航站做了如下处理:
图2 全部网址页面带预览图版
(1)首页静态化
网址导航站的首页进行了静态化处理,根据网址导航站的网址更新频率制定出在服务器缓存4个小时的规则。在4个小时之内,所有访问都是直接返回静态页面用以减少页面生成的时间。同时使用Apache2的mod_expire模块,设置静态文件的Expires和Last-Modified头部,设置静态页面失效时间为2小时,通过这个设置,在浏览器端,2小时之内在网址导航站访问都无需再次跟服务器交互。
(2)对页面进行gzip压缩
gzip压缩可以减少浏览器和服务器之间传输的数据大小,通过Apache2的mod_deflate模块启用gzip压缩。
(3)对于网址的搜索也在客户端完成
在首页静态化生成时也把用于搜索的字段“Link”、“SiteName”、“SiteNameAlias”和以上3个字段的拼音全称、拼音首字母(使用PHP查表法转换中文到拼音)使用逗号分隔全部组合成一个字符串写入首页的JavaScript代码内。对于以上3个字段的搜索全部在浏览器客户端完成,无需和服务器交互。首页载入的第一时间输入焦点定位在搜索框,直接回车可访问搜索结果的第一个内容。
(4)网址预览图使用延迟加载
全部网址的预览图版页面除了显示前面的几张图片外,其余图片只有在页面下拉到相应位置时才真正去下载图片加载,加快了页面载入的速度,也节省了移动端的数据流量。
5.访问数据分析
对于网址导航站,最有用的数据是某个网址的用户点击数量,这个数据在调整网址的分类和排序时是重要的参考。一种做法可在展示网址页面的时候不直接输出网址而是去服务器获得网址然后重定向,在服务器完成网址访问统计功能。在厦门大学校内网址导航站,笔者使用了另外一种方法提高用户的访问速度,减少在服务器计数导致的网络交互流量和服务器处理时间。该方法为直接在展示网址页面上输出网址,用户点击网址链接后使用浏览器客户端脚本JavaScript访问服务器的一个网址并立即返回404代码,在客户端重定向网址,后台每天使用Python脚本分析Apache2的404网址访问记录即可统计到所有网址的访问频次。
四、结论
厦门大学校内网址导航站实现了导航站的特征,达到了方便校内外人员和展示高校文化科研成果的目的。以表1同样的测试标准,厦门大学校内网址导航站首次下载量仅为88k,页面展示时间为0.733秒,2小时内下载量为0k,2小时后在服务器网址没有更改的情况下下载量仅为0.5k,载入时间为0.113秒。笔者今后将继续关注高校网址导航站发展,尝试在不影响速度的情况下可再加入搜索、农历、重要新闻等栏目的可行性。在速度方面还可以再进一步优化,例如在统计网址访问次数方面,目前是每次访问一个网址时均会访问一次服务器,可修改为点击网址后不直接提交到服务器而是记录在浏览器端,多次后合并提交达到减少网络交互的目的。
[1]刘建军.网络资源获取方法探讨[J].科技情报开发与经济,2013(1):130-132.
[2]杨林.普通高校网站主页设计思路探讨[J].保山师专学报,2006(5):7-9.
[3]方伟杰,洪波,云霞等.基于W eb2.0的校园信息门户设计与实现[J].中国教育信息化,2012(23):33-35.
[4]刘欢,卢蓓蓉.使用响应式设计构建高校新型门户网站[J].中国教育信息化,2013(9):71-74.
[5]黄建年,侯汉清.Tag分类基本问题探究[J].情报理论与实践,2008(3):461-465.
[6]张瑾,刘欢.基于用户服务的高校门户网站建设模式探讨[J].中国教育信息化,2012(19):20-23.