2 开发环境及工具介绍
Web技术兴起于1970年左右,并且在最初的时候,它的页面都只是比较单一的静态网页,当页面的数量比较庞大时,Web数据的管理和常用的一些操作就会变的效率变得低效,随着这种网页信息量增大的趋势的发展,用户对Web的开发技术和表现形式也提出了更多更高的要求[17]。
2.1 开发平台
平台:Windows
开发语言:PHP
服务器:Apache
数据库:MYSQL[17]
2.2 PHP语言
PHP(Personal Home Page)的问世,很大程度上简化了之前应用数据库和程序之间繁琐的连接过程,极大地降低了“动态网站”的开发门槛,对促进这门语言的崛起和迅猛发展起到了决定性的作用。PHP作为一种运行在服务器端的嵌入式脚本技术(它的工作方式和微软的ASP很相似),是根据服务器端的数据或用户的请求生动态网页的。它开源灵活、易上手。我们平时浏览的网页和开源程序就有不少都是用PHP+MYSQL开发的,如Facebook等等[18]。
此外,选择PHP作为Web开发技术让我在不同的数据库系统、操作系统平台等方面有更多的选择权[17]。
2.3 MYSQL数据库
MYSQL将数据保存在不同的表中,这样不仅提高了灵活性,而且增加了速度。SQL的全称是Structured Query Language,意思就是结构化查询语言。它是我们最常用的访问数据库的标准化语言。MYSQL不仅高效,而且低成本。另外,因为它是open source的,所以有很多小公司、小项目选择MYSQL,这样可以降低不少开发成本。所以,我也采用了PHP+MYSQL+Apache这种搭配方案来进行我的网站服务器的开发[17]。
2.4 WEB的安全性
对于每一个WEB程序软件开发来说,安全性无疑是一个关键的部分,可能由于时间和投入的不充分,软件的安全性经常会被开发者忽视,或者实现的不充分,从而导致软件程序不够安全和健壮。所以在开发网站程序的过程中,我们必须对用户输入的数据进行一定的判断和处理,排除掉一些常见的可能会出错的情况,从而达到数据的安全和程序的健壮[17]。
2.4.1 防止SQL注入
SQL注入是一种大家都比较熟悉的WEB攻击方法,应该也有不少人基本知道如何去防止这种攻击。它一般都是从某种形式的用户输入开始的,通过查询字符串(或者使用重写规则传递给查询字符串的数据),表单或者是上传的文件等等,任何一种可以直接或间接地接受到用户输入数据的地方,然后将用户输入的数据传入数据库中执行,而就在这个操作用户输入的数据上,难免会遭到某些用户的攻击[17]。
2.4.2 防止跨站脚本攻击
XSS攻击与SQL注入比较相似。两者都是因为没有很好地防范用户恶意输入的数据而引起的。区别在于,XSS是当某个字段中包含了恶意脚本时发生的,而SQL注入则是某个字段中包含恶意的SQL代码引发的[17]。
2.5 Apache服务器
Apache是最流行、最被广泛使用的Web服务器端软件之一,具有多平台和安全等特性。此外,它快速、可靠,能通过简单实用的API扩展。
Apache拥有许多特性,比如:支持最新的http/1.1通信协议;支持基于IP和域名的虚拟主机;支持通用网关接口;集成Perl处理模块;集成代理服务器模块;支持多种方式的http认证;通过第三方模块可以支持JavaServlets;支持安全Socket层(SSL)等等。
一些通用的语言接口支持Perl,Python、PHP等语言。Apache目前已经演变成了“LAMP”,即Linux、Apache、MYSQL和PHP的联合体。Apache的稳定、可靠让用户非常青睐。得益于它的开源特点,虽然不断被发现有新的漏洞,但是这些漏洞总能很快地被修补完善。所以,Apache具有相当高的安全性。正因为Apache拥有高效、稳定、开源、安全、实用、跨平台性好等众多优点,被《PC Magazine》在2004年8月评为近30年以来的10款最佳软件产品第三名[24]。 PHP+MYSQL水面机器人船控制平台设计与实现(3):http://www.youerw.com/jisuanji/lunwen_30102.html